首先,对不起我的英语。我是Android新手,正在开发应用程序。
我的应用有8个活动,它们通常通过单击和
像这样,activity1-> 2-> 3-> 4-> 5-> 6-> 7-> activity8。
照常,
当我按下后退按钮7次,它关闭了act8到act1的活动。如果我处于activty1,则后退按钮会关闭该应用程序。我想在那里发出alerdiaolog来提醒我,例如“这是您的最后活动!”。但是当我使用 public void onBackBacked()命令显示对话时,例如“您确定要退出吗?” ,这不仅阻止了应用程序关闭,还阻止了其他活动的关闭,例如,如果我处于第8个活动中而我无法返回第7个活动,则应用程序会显示警告对话框“您确定要退出吗?”
总结;
-如果我只想阻止除活动外仅关闭应用程序,我应该在 public void onBackPressed()上放置代码吗?
-我可以使用这样的代码吗,如果(myactivity是lastone或main活动){“一定要退出该应用程序吗?”}
再次抱歉,谢谢您。
答案 0 :(得分:1)
这是您的答案,尝试以这种方式。
对于您的第一个Activity onBackPressed()
方法,请编写以下代码。
@Override
public void onBackPressed() {
new AlertDialog.Builder(this)
.setMessage("Are you sure you want to exit?")
.setCancelable(false)
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
NumberOne.super.onBackPressed();
}
})
.setNegativeButton("No", null)
.show();
}
对于其他活动,请使用以下代码。
@Override
public void onBackPressed() {
finish();
}
答案 1 :(得分:1)
您应在活动 2至8 中保持onBackPressed()
的状态,并在活动1中保持onBackPressed()
的状态,如下所示。
@Override
public void onBackPressed() {
new AlertDialog.Builder(this)
.setMessage("Are you sure you want to exit?")
.setCancelable(false)
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
finish();
}
})
.setNegativeButton("No", null)
.show();
}
答案 2 :(得分:0)
如果您在每次统计新活动时都没有完成第一个活动,则此解决方案有效。 在上一个活动的onBackpress()中,写以下内容
a=0
tx=t1.xcor()
ty=t1.ycor()
comx=turtles[i].xcor()
comy=turtles[i].ycor()
if tx==comx and ty==comy:
a=1