您的位置:首页 > 其它

文章标题

2016-11-09 11:38 232 查看
下面要说的 是在Android中有一个要注意的:

Android中的activity对象生命周期比activity大。下面看代码

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

//在这里创建界面,做一些数据的初始化工作。

}

@Override

protected void onStart() {

super.onStart();

//到这一步变成用户可见不可交互的。

}

@Override

protected void onRestart() {

super.onRestart();

//從stop重新開始

}

@Override

protected void onResume() {

super.onResume();

//变成和用户可交互的

}

@Override

protected void onPause() {

super.onPause();

//到这一步是可见但不可交互的,系统会停止动画等消耗CPU的事情从上文的描述已经知道,应该在这里保存你的一些数据,

// 因为这个时候你的程序的优先级降低,有可能被系统收回。在这里保存的数据,应该在 onResume里读出来,

// 注意:这个方法里做的事情时间要短,因为下一个activity不会等到这个方法完成才启动。

}

@Override

protected void onStop() {

super.onStop();

//变得不可见,被下一个activity覆盖了。

}

@Override

protected void onDestroy() {

super.onDestroy();

//这是activity被干掉前最后一个被调用方法了,可能是外面类调用finish方法或者是系统为了

// 节省空间将它暂时性的干掉,可以用isFinishing()来判断它,

// 如果你有一个Progress Dialog在线程中转动,请在onDestroy里把他cancel掉,

// 不然等线程结束的时候,调用Dialog的cancel方法会抛异常的。

}

详细的activity周期参考:http://blog.csdn.net/liuhe688/article/details/6733407
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: