Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/190.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android:当页面被多次调用时,让一个活动保持运行_Android_Android Activity - Fatal编程技术网

Android:当页面被多次调用时,让一个活动保持运行

Android:当页面被多次调用时,让一个活动保持运行,android,android-activity,Android,Android Activity,我有一个标题页的多个页面分支,当按下分支页面上的后退按钮时,它会用以下命令调用标题页: Intent backIntent = new Intent(Options.this, TitlePage.class); Options.this.startActivity(backIntent); 然后用以下方法销毁: protected void onPause() { super.onPause(); finish(); } 问题是每次调用时,它都会覆盖标题页。

我有一个标题页的多个页面分支,当按下分支页面上的后退按钮时,它会用以下命令调用标题页:

Intent backIntent = new Intent(Options.this, TitlePage.class);
        Options.this.startActivity(backIntent);
然后用以下方法销毁:

protected void onPause() {
    super.onPause();
    finish();
}
问题是每次调用时,它都会覆盖标题页。我只需要一个标题页就可以存在,而不需要使用finish()方法销毁所有标题页

使用

bachIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
使用


如果您希望您的分支活动返回到标题活动,无论用户在树下走多远,您都应该使用标志调用这些活动。这样,每当子活动完成时,用户总是返回到标题活动

这可以通过两种方式实现:

具有用于启动
活动的
意图:

Intent myIntent = new Intent();
myIntent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(this, myIntent);
<activity
    android:name="com.logitech.squeezebox.activities.HomeActivity"
    android:label="@string/app_name"
    android:noHistory="true" />
Android清单文件(
AndroidManifest.xml
)中的

Intent myIntent = new Intent();
myIntent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(this, myIntent);
<activity
    android:name="com.logitech.squeezebox.activities.HomeActivity"
    android:label="@string/app_name"
    android:noHistory="true" />

如果您希望您的分支活动返回到标题活动,无论用户走到树下多远,您都应该使用标志调用这些活动。这样,每当子活动完成时,用户总是返回到标题活动

这可以通过两种方式实现:

具有用于启动
活动的
意图:

Intent myIntent = new Intent();
myIntent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(this, myIntent);
<activity
    android:name="com.logitech.squeezebox.activities.HomeActivity"
    android:label="@string/app_name"
    android:noHistory="true" />
Android清单文件(
AndroidManifest.xml
)中的

Intent myIntent = new Intent();
myIntent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(this, myIntent);
<activity
    android:name="com.logitech.squeezebox.activities.HomeActivity"
    android:label="@string/app_name"
    android:noHistory="true" />


这适用于您专门启动意向书的情况。我认为您需要做的是将其添加到您的清单中,清单代码用于无法/不启动意图(如从程序启动器启动)的情况。这是用于您专门启动意图的情况。我认为您需要做的是将其添加到您的清单中,清单代码用于无法/不启动意图(如从程序启动器启动)的情况。