我的软件中有一项登录活动和一项主要活动。我想要做的是启动登录活动,记录用户然后启动主要活动,并从堆栈中删除登录活动,以便用户可以通过按返回按钮访问登录活动。我应该使用哪个意图标志?
问问题
2256 次
3 回答
2
Intent intent = new Intent(currentClassYoureIn.this, newClassYouWantToBeIn.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); // closes all activities that were started after "newClassYouWantToBeIn"
startActivity(intent);
那,或者你可以开始你的新意图,然后使用该方法finish()
关闭当前活动(你正在启动新意图):
Intent intent = new Intent(currentClassYoureIn.this, newClassYouWantToBeIn.class);
startActivity(intent);
finish(); // closes "currentClassYoureIn" and now "newClassYouWantToBeIn" is the only activity up
于 2013-09-22T17:43:07.390 回答
1
好的,我最近也处理了这个问题。您需要覆盖onBackPressed()
方法以限制按下后退按钮的操作。
所以你应该做的是,在主要活动中写,
public void onBackPressed() {
new AlertDialog.Builder(this)
.setTitle("Alert")
.setMessage("Please Log out first.")
.setpositiveButton("Ok", null)
.create().show();
}
这样用户就不能在不退出主活动页面的情况下返回登录页面。
另请阅读有关finish()
.
这可能会有所帮助。检查一下。
于 2013-09-22T20:16:08.410 回答
0
这个答案最适合我希望它也适合你试试这个 https://stackoverflow.com/a/11308263
于 2014-04-30T13:35:36.780 回答