2013年8月15日 星期四

儲存activity的資料


 protected void onSaveInstanceState(Bundle outState);

onSaveInstanceState is called before onPause(), onStop(), and onDestroy()

將資料存到bundle,之後再從bundle讀取

ex:


@Override
    public void onSaveInstanceState(Bundle savedInstanceState) {
        super.onSaveInstanceState(savedInstanceState);
        savedInstanceState.putInt("currentIndex",  mCurrentIndex);
    }

說明: 儲存

 @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
         if (savedInstanceState != null) {
            mCurrentIndex = savedInstanceState.getInt(KEY_INDEX, 0);
        }
    }
說明: 讀取, 也可以override onRestoreInstanceState method讀取儲存的資料。


當使用者從App主畫面按下back鍵,存到bundle的資料將被清空

沒有留言:

張貼留言