Android基础
生命周期,当打开透明activity的生命周期
打开透明主题的activty或者dialog:原activty只调用onPause,不调用onStop,因为此时原activty还是可见的;返回原activty时只调用onResume,不走onResStart和onStart;
启动模式
- standard模式:每次启动必定创建一个新的activity示例入栈,不论这个实例是否存在;
- singleTop: 如果启动的activity已经处于栈顶,就直接复用栈顶的示例,而不会创建新的activity,如果不在栈顶,则处理方式与standard模式相同;复用时,activity不会走onCreate与on Start,而是走onNewIntent初始化;
- singleTask:如果要创建的activity已经存在与栈中,则移除栈中该activity上面的所有activity,使它成为栈顶复用,同样调用onNewIntent;
- singleInstance:该模式的activity仅仅能单独存在一个任务栈中(即整个系统中只存在一个activity的单例),常用于系统层级的应用,例如launch;
各种启动模式的应用场景
- singleTask:应用开启后仅仅只能有一个实例,例如HomePage,这样用户跳到其他页面后,再返回主页,就不会重新创建一个主页的实例了;
- singleTop:在当前的活动中需要再创建相同类型的活动,用该模式,可以节省内存,提高效率;
|