Android實(shí)現(xiàn)定制返回按鈕動畫效果的方法
今天我們來講一講Andorid中如何定制返回按鈕的動畫效果。我將結(jié)合實(shí)際應(yīng)用來闡述如何使用。
首先來看一個效果截圖,有一個搜索按鈕在一個頁面的頂部:
我之前實(shí)現(xiàn)的方式是和百度/Google首頁搜索的效果一樣的,類似web開發(fā)中的ajax請求,結(jié)果直接在當(dāng)前頁面顯示出來(下拉效果)。后來參考了眾多APP之后發(fā)現(xiàn)都是進(jìn)入到一個新的頁面,所以我也就改過來試試。。廢話說多了。。
那我們點(diǎn)擊了搜索框之后呢,會進(jìn)入到一個新的activity,這里的動畫效果很簡單,直接使用overridePendingTransition方法即可產(chǎn)生效果。。
@Override public void onClick(View v) { Intent intent = new Intent(activity, MerchantsSearchActivity.class); startActivity(intent); overridePendingTransition(R.anim.in_from_right, R.anim.out_to_left); }
進(jìn)入到真正的搜索界面:
這里我們有個返回按鈕,怎么樣點(diǎn)擊返回按鈕,讓頁面返回到上個頁面并且動畫效果是往右滑動呢?
首先想到的是重寫
@Override public void onBackPressed() { overridePendingTransition(R.anim.in_from_left, R.anim.out_to_right); super.onBackPressed(); }
這樣試下,是不行的。
然后通過activity生命周期的方向考慮,可行的方法是在onPause方法中加入動畫效果代碼:
protected void onPause() { super.onPause(); overridePendingTransition(R.anim.in_from_left, R.anim.out_to_right); }
運(yùn)行,點(diǎn)擊back。完美運(yùn)行。
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android開發(fā)動畫技巧匯總》、《Android開發(fā)入門與進(jìn)階教程》及《Android控件用法總結(jié)》。
希望本文所述對大家Android程序設(shè)計(jì)有所幫助。
- Android ListView的Item點(diǎn)擊效果的定制
- Android快速開發(fā)之定制BaseTemplate
- Android定制自己的EditText輕松改變底線顏色
- Android 組件樣式定制方法詳解
- Android實(shí)現(xiàn)定制桌面的方法
- android源碼探索之定制android關(guān)機(jī)界面的方法
- Android實(shí)現(xiàn)的狀態(tài)欄定制和修改方法
- Android 如何定制vibrator的各種震動模式M 具體方法
- Android定制RadioButton樣式三種實(shí)現(xiàn)方法
- 詳解android系統(tǒng)的定制
相關(guān)文章
Android自定義View 實(shí)現(xiàn)鬧鐘喚起播放鬧鐘鈴聲功能
這篇文章主要介紹了Android自定義View 實(shí)現(xiàn)鬧鐘喚起播放鬧鐘鈴聲的效果,本文通過實(shí)例代碼給大家詳解,需要的朋友可以參考下2016-12-12詳解Android使用Gradle統(tǒng)一配置依賴管理
本篇文章主要介紹了詳解Android 使用 Gradle 統(tǒng)一配置依賴管理,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-01-01Flutter路由的跳轉(zhuǎn)、動畫和傳參詳解(最簡單)
這篇文章主要給大家介紹了關(guān)于Flutter路由的跳轉(zhuǎn)、動畫和傳參的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-01-01Android實(shí)現(xiàn)瘋狂連連看游戲之游戲效果預(yù)覽(一)
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)瘋狂連連看游戲之游戲的效果預(yù)覽,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-03-03Android賬號注冊實(shí)現(xiàn)點(diǎn)擊獲取驗(yàn)證碼倒計(jì)時效果
這篇文章主要為大家詳細(xì)介紹了Android賬號注冊過程中實(shí)現(xiàn)點(diǎn)擊獲取驗(yàn)證碼倒計(jì)時效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-05-05Flutter狀態(tài)管理Provider的使用示例詳解
這篇文章主要為大家介紹了Flutter狀態(tài)管理Provider的使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11Android數(shù)據(jù)結(jié)構(gòu)優(yōu)化教程
這篇文章主要介紹了Android數(shù)據(jù)結(jié)構(gòu)優(yōu)化方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2023-01-01Android應(yīng)用中clearFocus方法調(diào)用無效的問題解決
clearFocus()主要用于清除EditText的焦點(diǎn),Android App開發(fā)中很多時候會發(fā)現(xiàn)其調(diào)用無效,帶著這個問題我們就來看一下本文主題、Android應(yīng)用中clearFocus方法調(diào)用無效的問題解決2016-05-05