活动的启动模式

活动的启动模式

设置活动的启动模式

  • 在ActivityManifest.xml文件里修改
    • 需要修改哪个活动,修改哪个活动的android:launchMode属性
    <activity
            android:name=".FirstActivity"
            android:label="This is FirstActivity"
            android:launchMode="singleTask">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
    
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".SecendActivity"
            android:launchMode="singleInstance">
            <intent-filter>
                <action android:name="com.example.mason.activity.ACTION_START" />
    
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="com.example.mason.activity.MY_CATEGORY" />
            </intent-filter>
        </activity>
    
  1. standard 默认 始终会创建新实例,不存不存在栈顶
  2. singleTop 如果栈顶已经存在该活动,则直接使用它,不会创建新的活动实例
  3. singleTask 每次启动时系统首先会返回栈中检查是否存在该实例,如果存在,则使用该实例,并把这个活动以上的所有活动都出栈,如果没有发现则创建一个新的活动实例
  4. singleInstance 启动一个新的返回栈来管理这个活动 。back时一个个栈来

这是我学习Android的笔记,参考书<<第一行代码-第二版>>,感谢郭霖大神
如有不足之处,可以一起讨论
附上郭霖的blog http://blog.csdn.net/guolin_blog

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。