如何使用来自另一个 Activity 的单个实例替换或重新启动 Activity 。
我有两个 Activity ,ActivityA 和 ActivityB。
在 list 中:
<activity
android:name=".ActivityA"
android:label="@string/activityA"
android:launchMode="singleInstance" >
</activity>
<activity
android:name=".ActivityB"
android:label="@string/activityB" />
我的问题是,如何从 ActivityB 中的方法重新启动 ActivityA。 我在 ActivityB 中的代码是:
class ActivityB extends Activity{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Button rButton = (Button) findViewById(R.id.restart);
rButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
restartActivityA();
}
});
}
public void restartActivityA() {
Intent intent = new Intent(this, ActivityA.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
this.finish();
}
}
如果我点击按钮,那么不会重新启动。
谢谢。
最佳答案
尝试将此添加到您的 ActivityA
中:
@Override
protected void onNewIntent(Intent intent)
{
super.onNewIntent(intent);
}
编辑:
像这样调用 ActivityB:
Intent intent = new Intent(this, ActivityB.class);
startActivity(intent);
finish();
谢谢。
关于android - 如何使用来自其他 Activity 的 singleInstance Activity 重新启动 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14293467/