android开发中activity的启动方式
2014-08-27 09:02
183 查看
众所周知,activity中的每个界面都是对应的一个activity,切换界面其实就是多个不同的activity之间的实例化操作,其中activity的启动方式。决定了activity的启动运行模式,下面就来简单写一下,还在这几种启动方式的区别:
一、standard (系统默认的启动方式,末次激活activity的时候,都要重新new一个activity的实例对象,并放入人去栈中)。
二、singleTop (如果在任务的栈顶正好存在该Activity的实例, 就重用该实例,否者就会创建新的实例并放入栈顶(即使栈中已经存在该
Activity实例,只要不在栈顶,都会创建实例 ) 。
三、singleTask (如果在栈中已经有该Activity的实例,就重用该实例(会调用实例的onNewIntent())。重用时,会让该实例回到栈顶,因此
在它上面的实例将会被移除栈。如果栈中不存在该实例,将会创建新的实例放入栈中。 )
四、singleInstance
在一个新栈中创建该Activity实例,并让多个应用共享改栈中的该Activity实例。一旦改模式的Activity的实例存在于某个栈中,任何应
用再激活改Activity时都会重用该栈中的实例,其效果相当于多个应用程序共享一个应用,不管谁激活该Activity都会进入同一个应用
中。
一、standard (系统默认的启动方式,末次激活activity的时候,都要重新new一个activity的实例对象,并放入人去栈中)。
二、singleTop (如果在任务的栈顶正好存在该Activity的实例, 就重用该实例,否者就会创建新的实例并放入栈顶(即使栈中已经存在该
Activity实例,只要不在栈顶,都会创建实例 ) 。
三、singleTask (如果在栈中已经有该Activity的实例,就重用该实例(会调用实例的onNewIntent())。重用时,会让该实例回到栈顶,因此
在它上面的实例将会被移除栈。如果栈中不存在该实例,将会创建新的实例放入栈中。 )
四、singleInstance
在一个新栈中创建该Activity实例,并让多个应用共享改栈中的该Activity实例。一旦改模式的Activity的实例存在于某个栈中,任何应
用再激活改Activity时都会重用该栈中的实例,其效果相当于多个应用程序共享一个应用,不管谁激活该Activity都会进入同一个应用
中。
相关文章推荐
- Android 开发艺术探索笔记-Activity启动方式
- android开发第三站---Activity和Intent--(1)4种常用Activity启动方式比较
- Android中帧动画在Activity启动时自动运行的几种方式
- Android开发学习之LauncherActivity开发启动的列表
- Android开发第2-1课:启动一个Activity
- Android应用开发学习笔记之启动另外一个Activity
- 【Android开发】启动另一个Activity
- Android中帧动画在Activity启动时自动运行的几种方式
- android开发要点--startActivity2种启动方法
- 【Android 开发】 : Activity之间传递数据的几种方式
- android-Intent启动activity的几种方式-隐式Intent
- android开发 activity 的四种启动模式!
- Android开发学习之LauncherActivity开发启动的列表
- Android中帧动画在Activity启动时自动运行的几种方式
- Android 编程下帧动画在 Activity 启动时自动运行的几种方式
- Android开发学习笔记(2):Service的简介和启动方式
- Android 开发一个Activity 启动另一个Activity碰到的一个问题
- Android开发9——Activity的启动模式
- Android开发9——Activity的启动模式
- Android开发入门之Activity的四种启动模式