这是一个系列,我们将其命名为工具箱,如果你还没有看之前的文章:
Activity的生命周期
背景
用户打开app,浏览页面,Android机器在栈内维护activitys。当前呈现给用户的activity总是在栈顶。
activity的生命周期通常有这四个:
Running activity处于栈顶,正在运行
Paused activity仍然可见,但是不和用户交互
Stopped activity不再可见
Killed activity被系统杀死或者主动调用了onfinish()方法。
activity生命周期
我们可以看一看这张图:
注意:onresume和onpause,onPause和onStop的区别。在onResume方法中,经常会写一些刷新数据或者其他非耗时操作,同样onPause也是在activity结束之前,做相关的保存数据工作。onPause和onStop的区别,根据上图就可知,onPause的时候,activity仍然可见,但onStop的时候,activity完全不可见。那么在什么时候会执行onPause,不执行onStop呢,答案是在展现Dialog或者其他浮层的时候。
调用父类方法
你应该在写oncreate方法之前调用父类方法,这同样也是Java规范。在onPause方法之后调用父类方法。原则是初始化之前是先调用父类方法,结束之前是后调用父类方法。
public void onCreate() {
super.onCreate();
// do work after super class function
// setContentView(R.layout.main);
}
public void onPause() {
// do work here first before super class function
// LocalBroadcastManager.getInstance(this).unregisterReceiver(mMessageReceiver);
super.onPause();
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。