- 6
- 0
- 约5.96千字
- 约 12页
- 2017-03-18 发布于贵州
- 举报
android中launhmode四种启动方法详解android中launchmode四种启动方法详解
Android中launchMode四种启动方法详解
在多Activity开发中,有可能是自己应用之间的Activity跳转,或者夹带其他应用的可复用Activity。可能会希望跳转到原来某个Activity实例,而不是产生大量重复的Activity。这需要为Activity配置特定的加载模式,而不是使用默认的加载模式。
加载模式分类及在哪里配置
Activity有四种加载模式:
standard
singleTop
singleTask
singleInstance
设置的位置在AndroidManifest.xml文件中activity元素的android:launchMode属性:
activity android:name=ActB android:launchMode=singleTask/activity
也可以在Eclipse ADT中图形界面中编辑:
?
区分Activity的加载模式,通过示例一目了然。这里编写了一个Activity A(ActA)和Activity B(ActB)循环跳转的例子。对加载模式修改和代码做稍微改动,就可以说明四种模式的区别。
standard
首先说standard模式,也就是默认模式,不需要配置launchMode。先只写一个名为ActA的Activity:
package com..activities;
import android.app.Activity;?import android.content.Intent;?import android.os.Bundle;?import android.view.View;?import android.view.View.OnClickListener;?import android.widget.Button;?import android.widget.LinearLayout;?import android.widget.TextView;
public class ActA extends Activity {?/** Called when the activity is first created. */?@Override?public void onCreate(Bundle savedInstanceState) {?super.onCreate(savedInstanceState);?TextView textView = new TextView(this);?textView.setText(this + );?Button button = new Button(this);?button.setText(go actA);?button.setOnClickListener(new OnClickListener() {?@Override?public void onClick(View v) {?Intent intent = new Intent();?intent.setClass(ActA.this, ActA.class);?startActivity(intent);?}?});?LinearLayout layout = new LinearLayout(this);?layout.setOrientation(LinearLayout.VERTICAL);?layout.addView(textView);?layout.addView(button);?this.setContentView(layout);?}?}
例子中都没有用layout,免得看着罗嗦。可见是ActA – ActA的例子。在界面中打印出对象的toString值可以根据hash code识别是否创建新ActA实例。
第一个界面:
点击按钮后:
可以多点几次。发现每次都创建了该Activity的新实例。standard的加载模式就是这样的,intent将发送给新的实例。
现在点Android设备的回退键,可以看到是按照刚才创建Activity实例的倒序依次出现,类似退栈的操作,而刚才操作跳转按钮的过程是压栈的操作。如下图:
?
singleTop
singleTop和standard模式,都会将intent发送新的实例(后两种模式不发送到新的实例,如果已经有了的话)。不过,singleTop要求如果创建intent的时候栈顶已经有要创建的Activity的实例,则将intent发送给该实例,而不发送给新的实例。
还是用刚才的示例,只需将launchMode改为singleTop,就能看到区别。
运行的时候会发现,按多少
您可能关注的文档
- 2017年主管护师考试复试题(三)2017年主管护师考试复习试题(三).doc
- 2017艺考倒计时 解析考生必知的4大常识2017艺考倒计时 解析艺考生必知的4大常识.doc
- 2017中财大会计硕士(pacc)考研辅导机构情况分析2017中财大会计硕士(mpacc)考研辅导机构情况分析.doc
- 2017中财大会计硕士(pacc)考研复试技巧分享2017中财大会计硕士(mpacc)考研复试技巧分享.doc
- 2017中财大会计硕士(pacc)考研参考书整理与利用2017中财大会计硕士(mpacc)考研参考书整理与利用.doc
- 2017中财大会计硕士(pacc)考研学习方法整理2017中财大会计硕士(mpacc)考研学习方法整理.doc
- 2017中财大会计硕士(pacc)跨专业考研难度详解2017中财大会计硕士(mpacc)跨专业考研难度详解.doc
- 2017中央财大会计硕士mpacc)考研辅导班实力解析2017中央财大会计硕士(mpacc)考研辅导班实力解析.doc
- 2017中央财大会计硕士mpacc)考研辅导机构实力解析2017中央财大会计硕士(mpacc)考研辅导机构实力解析.doc
- 2017中央财大会计硕士mpacc)考研参考书整理2017中央财大会计硕士(mpacc)考研参考书整理.doc
- 03-2 2025年度民主生活会征求意见座谈会主持词.docx
- 03-1 2025年度民主生活会主持讲话提纲.docx
- 02-1 会前学习-《县以上党和国家机关党员领导干部民主生活会若干规定》相关要求.docx
- 在2025年度民主生活会上的总结讲话三篇.docx
- 在2025年度民主生活会上的总结讲话三篇 (3).docx
- 市委宣传部2025年度民主生活会查摆问题整改方案两篇.docx
- 在市行政审批和政务信息管理局机关2026年全体干部政绩观教育大会上的党课讲稿.docx
- X市应急管理局2026年度安全生产监督检查计划.docx
- 2025年度民主生活会领导班子对照检查材料(五个带头)三篇.docx
- 2025年度民主生活会“五个带头”个人对照检查材料三篇.docx
原创力文档

文档评论(0)