您的位置:首页 > 移动开发 > Android开发

Activity跳转生命周期变化

2015-12-15 16:50 483 查看
场景:

当前 Activity A,这是用户打开一个新的Acitivty B,那么B的onResume和A 的onPause哪个先执行?

操作:打开app,进入A,点击按钮跳转到B,点击back键回到A,再按back键回到桌面

附上代码:
public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = (Button)findViewById(R.id.btnClick);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this,TestActivity.class);
startActivity(intent);
}
});
Log.i("TAG","A------------------onCreate");
}

@Override
protected void onStart() {
super.onStart();
Log.i("TAG", "A------------------onStart");
}

@Override
protected void onResume() {
super.onResume();
Log.i("TAG", "A------------------onResume");
}

@Override
protected void onPause() {
super.onPause();
Log.i("TAG", "A------------------onPause");
}

@Override
protected void onStop() {
super.onStop();
Log.i("TAG", "A------------------onStop");
}

@Override
protected void onRestart() {
super.onRestart();
Log.i("TAG", "A------------------onRestart");
}

@Override
protected void onDestroy() {
super.onDestroy();
Log.i("TAG", "A------------------onDestroy");
}
}

 

B 的Activity

 

public class TestActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test);
Log.i("TAG", "B---onCreate");
}
@Override
protected void onStart() {
super.onStart();
Log.i("TAG", "B---onStart");
}

@Override
protected void onResume() {
super.onResume();
Log.i("TAG", "B---onResume");
}

@Override
protected void onPause() {
super.onPause();
Log.i("TAG", "B---onPause");
}

@Override
protected void onStop() {
super.onStop();
Log.i("TAG", "B---onStop");
}

@Override
protected void onRestart() {
super.onRestart();
Log.i("TAG", "B---onRestart");
}

@Override
protected void onDestroy() {
super.onDestroy();
Log.i("TAG", "B---onDestroy");
}
}

 

显示结果:

// 点击app,进入A

A------------------onCreate
A------------------onStart
A------------------onResume

 

//点击按钮,实现跳转到B
A------------------onPause
B---onCreate
B---onStart
B---onResume

A------------------onStop

 

 

// 按back键回到A
B---onPause
A------------------onRestart
A------------------onStart
A------------------onResume
B---onStop
B---onDestroy

 

 

// 按back键回到桌面

A------------------onPause
A------------------onStop
A------------------onDestroy
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android