A启动B A生命周期全过程
Activity被激活A,onStart Activity显示在屏幕上(20569): -------->成功!
B------------------>(21407): 创建!
Activity被激活B,onStart Activity显示在屏幕上(21407): -------->成功!
Activity被恢复B,onResume(21407): -------->成功!
Activity被停止A,Activity进入停止状态onStop(21407): -------->成功!
3.从B中返回A(按物理硬件返回键)
Activity被暂停B,Activity进入暂停状态onPause(21407): -------->成功!
Activity被重启A,Activity从停止状态进入活动状态onRestart(21407): -------->成功!
Activity被激活A,onStart Activity显示在屏幕上(21407): -------->成功!
Activity被恢复A,onResume(21407): -------->成功!
Activity被停止B,Activity进入停止状态onStop(21407): -------->成功!
Activity被停止A,Activity进入停止状态onStop(21407): -------->成功!
1.启动A
Activity的初始化了,A第一步创建onCreate(20569): -------->成功!Activity被激活A,onStart Activity显示在屏幕上(20569): -------->成功!
Activity被恢复A,onResume(20569): -------->成功!
2.在A中启动B
Activity被暂停A,Activity进入暂停状态onPause(21407): -------->成功!B------------------>(21407): 创建!
Activity被激活B,onStart Activity显示在屏幕上(21407): -------->成功!
Activity被恢复B,onResume(21407): -------->成功!
Activity被停止A,Activity进入停止状态onStop(21407): -------->成功!
3.从B中返回A(按物理硬件返回键)
Activity被暂停B,Activity进入暂停状态onPause(21407): -------->成功!
Activity被重启A,Activity从停止状态进入活动状态onRestart(21407): -------->成功!
Activity被激活A,onStart Activity显示在屏幕上(21407): -------->成功!
Activity被恢复A,onResume(21407): -------->成功!
Activity被停止B,Activity进入停止状态onStop(21407): -------->成功!
Activity的消亡了,B最后的生命!销毁onDestroy(21407): -------->成功!
4.继续返回
Activity被暂停A,Activity进入暂停状态onPause(21407): -------->成功!Activity被停止A,Activity进入停止状态onStop(21407): -------->成功!
Activity的消亡了,A最后的生命!销毁onDestroy(21407): -------->成功!
刷新activity的方法:
1. 刷新当前activity界面数据(手动刷新):
在activity类下新增一个refresh()方法:
/**
* 刷新, 这种刷新方法,只有一个Activity实例。
*/
public void refresh() {
onCreate(null);
}
2. 刷新另一个activity界面数据(自动刷新):
在涉及到sqlite3数据库操作的activity类下重写onResume()方法:(此处建议复习下activity的生命周期, 并了解下onResume()方法的使用)
/**
* 调用onCreate(), 目的是刷新数据,
* 从另一activity界面返回到该activity界面时, 此方法自动调用
*/
@Override
protected void onResume() {
super.onResume();
onCreate(null);
}
由此, 涉及到sqlite数据库数据的插入/更新/删除的activity的类, 建议像上面一样重写onResume()方法, 这是本人在实践中解决"刷新另一activity界面数据"的可行方法