在AndroidManifest中Activity的launchMode有四种类型:
1.standard
2.singleTop
3.singleTask
4.singleInstance
今天就简单介绍一下,附上一个参考地址,人家写的牛逼http://blog.csdn.net/moreevan/article/details/6788048
下面还是看代码吧,都放到注释里了:
package com.mxy;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.View;
/**
* 进程 参考http://blog.csdn.net/niu_gao/article/details/7202300
* Activity四种启动模式
* standard 按照栈先进后出的顺序存储
* 例如 依次点开 act1 act2 act1 act2 点击返回的时候就是 act2 act1 act2 act1 虽然里面有两个act1 两个act2 但却都不相同
*
* singleTop 当进入的Activity已经在栈顶了,不会再创建新的Activity放入栈中,而是复用栈顶的activity,但是会调用onResume方法
* 例如 act2是singleTop的 依次点击 act1 act1 act2 act2 act2 这时候栈中存着的就是act1 act1 act2 点击返回的饿时候就是act2 act1 act1
* 在浏览器中得书签会用到该模式
*
* SingleTask 一般和singleTop操作模式类似,如果他发现任务栈里面已经有了要启动的这个Activity,他会清空这个Activity所在的任务栈上面的所有Activiy,然后直接复用这个已经存在的Activity 。
* 例如 act2是SingleTask的 依次进入 act1 act2 act1 act2 act1 act2这时候栈中存在的是act1 act2 点击返回的时候就是act2 act1
*
* singleinstance 被设置了singleinstance得Activity,会放入一个独自的任务栈,然后其他未设置为singleinstance的任务栈,如果设置了singleinstance得Activity
* 被请求了,那这时候这个任务栈的优先级就比另一个普通的任务栈的级别高,就会被运行,如果其他的Activity被请求,就会降低该任务栈的优先级
* 例如 act2是singleinstance的 这时候我们
* 点击act1 后
* 任务栈 优先级 栈中数据(左边表示栈顶)
* 普通 低 act1
*点击act2后
* 普通 低 act1
* 单例 高 act2
* 点击act3后
* 普通 高 act1 act3
* 单例 低 act2
*点击act2后
* 普通 低 act1 act3
* 单例 高 act2
* @author mxy
*
*/
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
protected void onResume() {
Log.i("mxy", "MainActivity");
super.onResume();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public void click(View view){
Intent intent = new Intent(this,SecondActivity.class);
startActivity(intent);
}
}
例子源码地址:http://download.csdn.net/detail/mengxiangyue/7262467
分享到:
相关推荐
Android自学笔记-11-listview简单例子
Android自学笔记-13-ContentObserver内容观察者
Android自学笔记-14-意图(Intent)
Android自学笔记-15-Activity的生命周期
Android自学笔记-9-Pull方式处理XML
Android自学笔记-17-广播接收者(BroadcastReceiver)
郝斌数据结构自学笔记--知识点+程序源代码.docx
自学笔记--oracle自学笔记-视频实例整理
51单片机自学笔记-范红刚著 第一版, 单片机系列的51单片机教程, 适合自学, 清爽电子书.
STM8单片机自学笔记-范红刚著, 单片机自学系列的STM8自学教程,, 推荐给大家, 这个系列我一直在收集. 清爽版本
数字电路自学笔记-1127
STM32自学笔记-蒙博宇著 第一版, 单片机自学系列的STM32单片机教程, 适合自学, 清爽版本.
《Cortex-M4自学笔记-基于Kinetis K60》配套材料 含LPLD例程及底层函数库V2.2
数字电路自学笔记-1207
2020最新整理原版郝斌数据结构自学笔记--知识点+程序源代码 数据结构学习的参考资料,非常不错的教程,请大家上哔哩哔哩学习
0、前言本教程为《OSCP自学笔记-靶机练习》系列之一的《October靶机练习》,在这个系列中笔者将抽取10台典型靶机作为练习目标,以OSCP学习及考试的角度
非常详细的FGPA设计指导书,Verilog程序,包含初学者接触的各种内容。
QTP自学笔记,本人自学时记录的。doc格式。 点到了自学时应该多注意的地方。
中国大学MOOC 计算机网络 徐建主讲 讲义《计算机网络自学笔记》pdf电子版