【发布时间】:2018-05-28 07:41:31
【问题描述】:
在我的应用程序中,我遇到了这个问题,即只有在按下后退按钮两次时才会关闭活动(例如:Activity_B)。我希望在按下后退按钮一次时关闭 Activity_B,然后再显示 Activity_A。
我试过这段代码:
public override void OnBackPressed()
{
base.OnBackPressed();
//MoveTaskToBack(true);
this.Finish();
Finish();
FinishAndRemoveTask();
}
但行为仍然相同。 我尝试放置调试器点并查看它的行为。 按下后退按钮时将调用 Activity_B。
启动Activity_B的代码是:
private void OnDataLayout_Click(object sender, EventArgs e)
{
Intent intent = new Intent(this, typeof(Activity_B));
StartActivity(intent);
}
非常感谢任何帮助。
Update1:我观察到 OnDataLayout_Click 事件也被调用了两次,在导航到 Activity_B 的 OnCreate() 后,OnCreate() 也被调用了两次。
【问题讨论】:
-
哪个活动首先打开?
Activity_A或Activity_B -
Activity_A 先打开,再打开 Activity_B。但是当我在 Activity_B 中按下返回按钮时,Activity_B 屏幕显示两次,然后它才导航回 Activity_A
-
能否提供启动Activity_B的代码。
-
更新了我的问题
-
请尝试使用
Activity_B.class而非typeof(Activity_B)打开新活动。