Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/193.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 Intent_User Interface_Android Activity - Fatal编程技术网

Android 单击“上一步”按钮时,继续显示以前的意图

Android 单击“上一步”按钮时,继续显示以前的意图,android,android-intent,user-interface,android-activity,Android,Android Intent,User Interface,Android Activity,单击“后退”按钮时出现问题。它一直转到上一个活动。用户可以登录使用该应用程序。但问题是,当用户注销并单击“上一步”按钮时,它将显示“登录”面板页面。如果用户想要退出该应用程序,他们将不得不经历多次反向点击。这不是我想要的 当然,我可以使用菜单,并为用户提供退出应用程序的选项,但我不想使用这种方法,因为它不是一种常用的方法。这不是很好,因为通常用户会单击返回到第一页,并提示他们是否要退出 如何解决意图问题?如果您不想通过后堆栈访问活动,请在AndroidManifest.xml中修改其条目,如下所

单击“后退”按钮时出现问题。它一直转到上一个活动。用户可以登录使用该应用程序。但问题是,当用户注销并单击“上一步”按钮时,它将显示“登录”面板页面。如果用户想要退出该应用程序,他们将不得不经历多次反向点击。这不是我想要的

当然,我可以使用菜单,并为用户提供退出应用程序的选项,但我不想使用这种方法,因为它不是一种常用的方法。这不是很好,因为通常用户会单击返回到第一页,并提示他们是否要退出


如何解决意图问题?

如果您不想通过后堆栈访问活动,请在AndroidManifest.xml中修改其条目,如下所示:

<activity
    android:name="com.myDomain.myApp.MyActivity"
    android:label="My Activity"
    android:noHistory="true" >
</activity>
当前活动:

public void goAway()
{
    finish();
}
previousActivity.goAway();

当然,您需要引用当前活动中的上一个活动。

如果您希望保留后堆栈并仅在用户注销或按下注销屏幕上的“后退”按钮时清除它,可以执行以下操作

1:使用相同的
REQUEST\u代码调用
startActivityForResult(意图、请求\u代码)
启动每个活动

2:在每个
活动中覆盖
onActivityResult()
,并添加以下代码段

if(resultCode == RESULT_OK && requestCode == REQUEST_CODE) {
    setResult(OK);
    finish();
}
3:当用户注销或在注销屏幕上按back键时,执行以下操作

setResult(OK);
finish();

这将确保在用户注销后清除后台堆栈中的所有活动。

如何创建引用?如果我以前的活动有一个名为HelloWorld.java的java文件,我会调用HelloWorld.goAway();?