Activity的几种lanuchMode模式其实很容易理解,但是好像很少有初学者会去关注,我觉得这个知识点在处理Activity界面重复加载的时候用处很大。
android:launchMode:
1.standard:标准模式
当Activity运行时,不会去考虑栈里是否存在已经实例化的Activity,会直接重新实例化一个
2.singleTop:置顶模式
当Activity在顶端栈顶端时,不创建实例,会运行OnNewIntent
3.singleTask:线程唯一
当栈里存在Activity时,将Activity置顶,会运行OnNewIntent,并销毁该Activity上层的Activity
4.singleInstance:
新建一个栈,有且仅有唯一的Activity,并且不会创建新的实例,该栈中只有一个Activity的实例
如果遇到用户重复进入同一个activity但是获取不同的数据时,可以优先考虑Activity的lanuchMode而不是使用finish();