四大组件之activity

来源:互联网 发布:罗赛塔石碑软件 编辑:程序博客网 时间:2024/06/05 20:11

1:如何创建一个新的activity

  [1]:四大组件都要在清单文件里面配置

[2]:activitty下的lable和icon属性可以和application节点的属性不一样,默认用application,一般只有1个页面,

2:隐式意图与显示意图

[1]开启自己应用的界面用显示意图

[2]开启其他应用如系统应用的时候用隐式意图 电话

[3]显示意图安全

3:生命周期

[1]oncreate方法

[2]onDestroy方法 当activity销毁时调用

[3]onStart方法  当activity界面变成可视的时候调用 

[4]onStop方法 当activity页面不可见 不是页面退出,而是不能可见 

[5]onResume方法 界面有按钮可以点击 获取了焦点 可以没有按钮 只要有能力进行交互就行

[6]onPause方法 界面没有按钮可以点击 失去了焦点 没有能力进行交互

[7]onRestart方法 当activity界面又变成可视的时候调用 不般不用

4:横竖屏切换生命周期

ctrl + F11

   在清单文件设置

android:screenOrientation="portrait"代表竖屏

5:任务栈

先进后出

[1]打开一个activity叫进栈 关闭叫出栈

[2]我们操作的activity永远是栈顶的activity

[3]任务栈是用来维护用户操作体验的

[4]应用程序退出了是任务栈清空了

[5]一般情况一个应用程序对应一个任务栈

6:四种启动模式

[1]singletop

activity的配置文件中设置android:launchMode="singleTop"

如果任务栈顶存在这个要开启的activity, 不会重新创建activity,而是复用已经存在的activity.保证栈顶如果存在,不会重复创建

应用场景:浏览器的书签

[2]singlertask

单一任务栈,在当前任务栈里面只能有一个实例存在

当开启activity的时候,就去检查在任务栈里面是否有实例已经存在,如果有实例存在就复用这个已经存在的activity,并且把这个activity上面 的所有的别的都清空,复用这个已经存在的activity.保证整个任务栈里面只有一个实例存在

应用场景:浏览器activity,输入一个网址只会复用这个界面不会再创建一个界面

[3]singleInstance

activity会运行在自己的任务栈里面,并且这个任务栈里面只有一个实例存在

如果你要保证一个activity在整个手机操作系统里面只有一个实例存在,使用singleInstance

应用场景:来电页面







原创粉丝点击