Android学习小结3(活动)

来源:互联网 发布:mac网页静音怎么取消 编辑:程序博客网 时间:2024/06/08 23:56

所有的知识都是《第一行代码》里面的
一个活动的四种状态:
运行,暂停,停止,销毁

一个活动的生存期:
onCreate(),onStart(),onResume(),onPause(),onStop(),on Destory(),onRestart();
完整的生存期:
onCreate()到onDestory()
可见的生存期:
onStart()到onStop()
前台的生存期:
onResume()到onPause();
在注册表中声明:
Android:theme= :定制对话框式的主题

经过观察一个活动开始到显示,一定经过onStart以及onResume
切换到只有对话框形式的时候,而后面的activity能够看到的话,只会进行onPause
直接切换到另一个活动的话,看不见背景中的活动而会显示onResume进行交互,接着onPause,确定不需要了上一个活动,就onStop
当按Back键时,则会先Restart再start

活动回收之后:
获得回收前的数据
在onCreate中加上判断
if(savedInstanceState != null)
{
String tempData =savedInstanceState.getString(“data_key”);
Log.d(TAG, tempData);
}
在Activity中加上
protected void onSaveInstanceState(Bundle outState){
super.onSaveInstanceState(outState);
String tempData = “Something you just type”;
outState.putString(“data_key”, tempData);
}
活动四种启动模式:standard,singleTop,singleTask,singleInstance;
可以在注册表中给指定android:lanchMode属性选择启动模式

Standard:
所明白的标准模式其实就是,平常使用的那种,在原来的基础上创建一个新的活动;

Intent intent = new Intent(first.this,first.class);
通过此处的现象,知道每一次敲击事件,活动的创建,并不关心是否返回栈顶

singleTop
android:launchMode=”singleTop”
只需要明白,所谓的singleTop,指的是栈顶的只有一个
无论敲击多少次也好,从Log里面只能看见一次创建
意思就是:能够明白里面是first活动位于栈顶,所以就不需要才一次创建
换句话说,就是会判断栈顶是否需要更换

singleTask
实现的是在应用程序中上下文中只有一个实例
singleTask的模式并不含上面模式的功能只是保证了实例创建的唯一

0 0