Activity地加载模式

Activity地加载模式

ID:44781402

大小:152.96 KB

页数:10页

时间:2019-10-28

Activity地加载模式_第1页
Activity地加载模式_第2页
Activity地加载模式_第3页
Activity地加载模式_第4页
Activity地加载模式_第5页
资源描述:

《Activity地加载模式》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实用   Activity就相当于一块块的七巧板,每个应用用这一个个七巧板组合成了美丽的图画,那么,每个应用又是如何将各个Activity组合起来的呢?这就是本文要讲的内容。   通常情况下,一个应用有一个Task,这个Task就是为了完成某个工作的一系列Activity的集合。而这些Activity又被组织成了堆栈的形式。   当一个Activity启动时,就会把它压入该Task的堆栈,而当用户在该Activity中按返回键,或者代码中finish掉时,就会将它从该Task的堆栈中弹出。如果我们没有特别的需求,我们的应用

2、就会呈现出如下图所示的情形(好吧,我承认这个图是document里的):   然而,事实上我们的需求远没有我们想的那么简单。有时候,你可能希望在开启一个Activity时,重新开启一个Task;有时你可能希望将已经存在的一个Activity放到栈顶,而不是重新创建一个...   Android为了使我们能够打破默认的堆栈的先后出的模式,提供了两个种方式:一种是在AndroidManifest.xml定义Activity时指定它的加载模式,另一种是在用Intent开启一个Activity时,在Intent中加入标志。如果两种

3、方式都用了,则后者的优先级更高。   两种方式的差别在于,前者在于描述自己,向别的Acttivity等声明你们如何来加载我;而后者则是动态的,指出我要求你(要启动的Activity)如何来加载。本文的重点在于研究在AndroidManifest.xml中声明加载模式。Android为我们定义了四种加载模式,分别是:standard、singleTop、singleTask和singleInstance。    “拿来主义”(有求必应)——standard模式    我们写一段代码来测试一下standard加载模式,如下  

4、  AndroidManifest.xml里Activity的设置如下:文档实用1. 4.     5.         6.        

5、tegory android:name="android.intent.category.LAUNCHER" /> 7.     8.     Activity1的代码如下:1.public class Activity1 extends Activity { 2.    @Override 3.    public void onCreate(Bundle savedInstanceState) { 4.        super.onCreate(savedInst

6、anceState); 5.        setContentView(R.layout.main); 6.    } 7. 8.    /**当点击Activity时,启动另一个Activity1*/ 9.    @Override 10.    public boolean onTouchEvent(MotionEvent event) { 11.        Intent intent = new Intent(this, Activity1.class); 12.        startActivity(in

7、tent); 13.        return super.onTouchEvent(event); 14.    } 15.} 然后我们启动程序,开启Activity1,然后点击Acitivity1,启动另一个Activity1,然后再点击,再点击,再点击...之后我们点返回键。   发生了什么事情?没错,我们按返回键返回一个又一个相同的Activity1。   standard是Activity默认的加载模式,这种方式用一个词来形容的话就是“拿来主义”。使用这种模式的Activity向所有使用它的Task声明:“我这

8、里的这种Activity多着呢,谁需要的话我就给谁”。所以当一个Task请求加载这个Activity时,该Task直接实例化该Activity,并把它放到栈顶。   因此我们的例子就出现了这样的堆栈结构(假设我们点击了4次):Activity1Activity1Activity1Activity1Act

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。