我尝试设置属性android:launchMode="singleTask"
来调用Activity,但它仍然无法正常工作。
我需要只调用一次onCreate(Bundle bundle)
方法,但每次启动Activity时它仍会调用。
我使用以下代码启动Activity:
public void onClick(View v) {
Intent myIntent = new Intent(v.getContext(), NextActivity.class);
startActivity(myIntent);
}
请让我知道我做错了什么
答案 0 :(得分:1)
必须是这样的:
android:launchMode="singleTop"
并致电:
Intent intent= new Intent(context, YourActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
已存在的主题:Android: new Intent() starts new instance with android:launchMode="singleTop"
答案 1 :(得分:0)
即使您启动模式为“singleTop”,也会启动一项新活动。
在每次活动创建时,其onCreate()
将会启动。
我的理解是singleTop选项,基本上完成了调用者Activity。
我认为您可能认为onCreate()
是 Application 构造函数的一种形式,但它实际上是 Activity 构造函数。您可能希望在其他地方进行一次初始化。