多个Activity交互的生命周期:

一、多个Activity交互的生命周期:
A Activity打开B Activity的时候:
       A Activity                    B Activity
       onCreate
       onStart
       onResume
       onPause
                                              onCreate
                                              onStart
                                              onResume
        onstop
B 点击Back键的时候:
                                             onPause
     onRestart
     onStart
     onResume
                                           onStop
                                           onDestroy
 
二、Activity的横竖屏切换
在打开A Activity会执行onCreate、onStart、onResume切换横屏后会执行onPause、onStop、
onDestroy、onCreate、onStart、onResume,这样如果有数据的话,数据就会丢失。使用onSaveInstanceState(Bundle outState)方法就会保存一些状态信息。如:
@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
    outState.putString("name","nate");
}

然后在onCreate(Bundle savedInstanceState)方法中获取,如:

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        if(savedInstanceState != null){
            //textView为设置的TextView控件
            TextView textView = (TextView)findViewById(R.id.textView);
            textView.setText(savedInstanceState.getString("name"));
        }
    }

这样保存数据后,重新打开A Activity会执行onCreate、onStart、onResume切换横屏后会执行onPause、onSaveInstanceState、onStop、 onDestroy、onCreate、onStart、onResume。

posted on 2017-03-08 13:52  懂你在爱我  阅读(187)  评论(0)    收藏  举报

导航