今天我們來講一講Andorid中如何定製返回按鈕的動畫效果。我將結合實際應用來闡述如何使用。
首先來看一個效果截圖,有一個搜尋按鈕在一個頁面的頂部:
我之前實現的方式是和百度/Google首頁搜尋的效果一樣的,類似web開發中的ajax請求,結果直接在當前頁面顯示出來(下拉效果)。後來參考了眾多APP之後發現都是進入到一個新的頁面,所以我也就改過來試試。。廢話說多了。。
那我們點擊了搜尋方塊之後呢,會進入到一個新的activity,這裡的動畫效果很簡單,直接使用overridePendingTransition方法即可產生效果。。
@Overridepublic void onClick(View v) { Intent intent = new Intent(activity, MerchantsSearchActivity.class); startActivity(intent); overridePendingTransition(R.anim.in_from_right, R.anim.out_to_left);}
進入到真正的搜尋介面:
這裡我們有個返回按鈕,怎麼樣點擊返回按鈕,讓頁面返回到上個頁面並且動畫效果是往右滑動呢?
首先想到的是重寫
@Overridepublic 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);}
運行,點擊back。完美運行。
更多關於Android相關內容感興趣的讀者可查看本站專題:《Android開發動畫技巧匯總》、《Android開發入門與進階教程》及《Android控制項用法總結》。
希望本文所述對大家Android程式設計有所協助。