Activity四种启动模式的特点
来源:互联网 发布:地理数据下载 编辑:程序博客网 时间:2024/06/06 03:20
一.Activity四种启动模式的特点
1.standard模式
Activity默认的启动模式,依次入栈出栈,满足"先进后出"的原则。这种模式下,可以有多个相同的实例,也允许多个相同Activity叠加
2.singleTop模式
当启动的Activity已经位于栈顶,则直接使用它不创建新的实例。如果没有则创建新的实例。
3.singleTask模式
如果希望Activity在整个应用程序中只存在一个实例,可以使用该模式。每次启动该Activity时,系统首先会检查栈中是否存在该
Activity的,如果发现已经存在则直接使用,并将当前Activity之上的所有Activity出栈。
4.singleInstance模式
该模式加载Activity时,无论从哪个任务栈中启动该Activity,只会创建一个Activity实例,并且会使用一个全新的任务栈来装载该Activity实例。
二.Activity三种界面切换。
1.建立如图所示资源文件。
2.在MainActivity中
package com.example.administrator.myapplication;import android.content.Intent;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;import android.view.View;public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } public void click1(View view) { Intent intent = new Intent(this, MainActivity.class); startActivity(intent); Log.i("Tag", "页面一 taskId:" + getTaskId()); } public void click2(View view) { Intent intent = new Intent(this, Main2Activity.class); startActivity(intent); Log.i("Tag", "页面二 taskId:" + getTaskId()); } public void click3(View view) { Intent intent = new Intent(this, Main3Activity.class); startActivity(intent); Log.i("Tag", "页面三 taskId:" + getTaskId()); }}
3.在activity_main.xml中
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context="com.example.administrator.myapplication.MainActivity" android:onClick="click1"> <Button android:text="第一个页面" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="click1" /> <Button android:text="第二个页面" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="click2" /> <Button android:text="第三个页面" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="click3" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="50sp" android:text="第一个页面" /></LinearLayout>4.在AndroidManifest.xml中
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.administrator.myapplication"> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".Main2Activity"></activity> <activity android:name=".Main3Activity"></activity> </application></manifest>5.完成
0 0
- Activity四种启动模式的特点
- Activity四种启动模式的特点
- Activity的四种启动模式及特点
- Activity的启动模式特点
- Android学习之Activity的四种启动模式与特点
- "singleTask"启动模式的Activity的特点
- activity的启动模式以及特点
- Activity的四种启动模式
- Activity的四种启动模式
- Activity的四种启动模式2
- Activity的四种启动模式
- activity的四种启动模式
- Activity启动的四种模式
- Activity的四种启动模式
- activity 的四种启动模式
- activity 的四种启动模式
- 分析Activity的四种启动模式
- Activity的四种启动模式
- VXLAN 概念(Part II)- 每天5分钟玩转 OpenStack(109)
- 在 ML2 中配置 VXLAN
- 好吧,这就是等级的区别之一待续
- 链表求和
- 创建 VXLAN
- Activity四种启动模式的特点
- android进程间通信
- 安卓命令行
- EA&UML日拱一卒-为类添加操作和方法
- Python设置三方库路径
- React JSX
- 徒步
- 关于Android RecyclerView的那些开源LayoutManager
- log4cpp库的使用