Android - 頁面返回上一頁面的三種方式

  今年剛剛跳槽到了新公司,也開始轉型作Android,由此開始Android的學習歷程。android

  最近在解不少UI的bug,在解bug過程當中,總結了在UI的實現過程當中,頁面返回上一頁面的幾種實現方式。ide

 

一. 本身佈置一個back的按鈕或圖片學習

   固然就要本身寫回退實現的邏輯,例如back的id爲R.id.back,在onClick方法中,switch case中調用finish方法,case R.id.back: finish();back();spa

 

二. 使用系統提供的Action Barcode

       Action Bar是一種新増的導航欄功能,在Android 3.0以後加入到系統的API當中,它標識了用戶當前操做界面的位置,並提供了額外的用戶動做、界面導航等功能。       xml

       簡單來講,就是系統提供的標準組件,讓咱們方便的實現後退功能。blog

       ActionBar的添加很是簡單,只須要在AndroidManifest.xml中指定Application或Activity的theme是Theme.Holo或其子類就能夠了。事件

       但有一點要注意的是,若是要在Java代碼中操做ActionBar,例如setTitle,指定其文字,必須在onStart方法中進行,而不能是onCreate方法,由於在系統週期中,onStart方法時View纔是可見的。圖片

1     @Override
2     public void onStart() {
3         super.onStart();
4         if (mIsInProvision) {
5             getActionBar().setTitle(R.string.connect_to_internet);
6         }
7     }

  另外,若是要處理action bar的點擊事件,例如點擊action bar時禁止後退,只須要在onOptionsItemSelected方法中處理android.R.id.home的事件就能夠了。id.home就是action bar的id。        get

 1     @Override
 2     public boolean onOptionsItemSelected(MenuItem item) {
 3         switch (item.getItemId()) {
 4             case android.R.id.home: 6                     return false;12         }
13         return super.onOptionsItemSelected(item);
14     }

  如上的代碼,點擊action bar將不能回退。

 

三. 機器上的back按鍵

      處理此按鍵的後退功能,只須要在onBackPressed方法中就能夠。

1     @Override
2     public boolean onBackPressed() {
3         return true;
4     }

 

以上就是本身在解Bug中總結的三種方式,做爲小白,繼續學習Android~加油~

                                                   - 2016年5月6日午

相關文章
相關標籤/搜索