码迷,mamicode.com
首页 > 移动开发 > 详细

android面试总结01 activity生命周期

时间:2015-07-25 10:42:34      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:activity 生命周期

面试经常会被问到的:

Q:能说一下Activity的生命周期吗?

Activity生命周期如下:

onCreat

onStart

onResume

onPause

onStop

onDestory

外加一个 onRestart

技术分享

就像图示一样,当一个activity第一次启动时会调用的函数分别是

onCreat

onStart

onResume方法

此时activty会正常运行

技术分享

当出现如图所示,屏幕弹出一个dialog遮住activity,但这是activity还显示一部分时,

会调用onPause,当dialog dismiss时activity又重新回到前台会调用onResume方法。


另外一种情况,即A activtiy跳转到另外一个B activity,第一个A activity被完全覆盖时会调用

onPause onStop方法,当从B activity返回时,如果此时A activity未被销毁(一般情况下不会被销毁),

会分别调用 onRestart  onStart  onResume方法。然后activity进入正常运行状态。


这大致就是面试中常回答activity生命周期调用方法。

下面再加一个onCreat(Bundle savedInstanceState)

savedInstanceState什么时候会用到呢 ?

技术分享

例如当用户在上图搜索框中输入了“美女”,但这是用户清理内存将这个进程干掉了,我们希望用户进入这个activity界面保存着这个搜索框中的内容怎么做呢

这时候可以调用这个方法

@Override
protected void onSaveInstanceState(Bundle savedInstanceState)
{
super.onSaveInstanceState(savedInstanceState);
savedInstanceState.putString("keyText", searchEditText.getText().toString());
}


在onCreat方法中执行下列语句

if (savedInstanceState != null)
{
keyText = savedInstanceState.getString("keyText’");

                        searchEditText.setString(keyText);

}

即可。

版权声明:本文为博主原创文章,未经博主允许不得转载。

android面试总结01 activity生命周期

标签:activity 生命周期

原文地址:http://blog.csdn.net/jav_imba/article/details/47053599

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!