Activity的启动模式
2020-03-16 本文已影响0人
和莱
Android的Activity'启动模式有标准模式、栈顶复原模式、栈内复用模式和单例模式。
标准模式是默认模式,每启动一次Activity都会在任务栈中创建一个一个实例。
栈顶复用模式,如果新的Activity()已经位于任务栈的栈顶,那么这个活动不会再被创建,onNewIntent()方法会被调用,获得当前请求的信息,如果这个Activity已经被创建但是没有位于栈顶,那还是会继续创建活动。
栈内复用模式如果栈内已经存在这个活动的实例,不在栈顶也不会再创建实例,而是调用onNewIntent()方法获得活动信息。如果所需任务栈中没有实例,还是需要新建实例。
单实例模式:此活动一旦被创建,系统为其单独创建一个任务栈,这个活动的实例就位于这个任务栈中,后续的请求均不会重新创建新的活动实例。
设置活动的启动方式有两种,第一种是在AndroidManifest文件中指定,第二种是在Intent中设置标志位来设置启动方式。