java确认仅在Mainacity中按back关闭应用程序?
我希望用户确认关闭我的应用程序。我在主要活动中使用以下代码:
@Override
public void onBackPressed() {
if (this.lastBackPressTime < System.currentTimeMillis() - 4000) {
toast = Toast.makeText(this, "Press back again to close this app", Toast.LENGTH_LONG);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();
this.lastBackPressTime = System.currentTimeMillis();
} else {
if (toast != null) {
toast.cancel();
}
super.onBackPressed();
}
}
在其他课程中,我使用以下方法:
@Override public void onBackPressed() {
if (!mWebView.onBackPressed()) { return; }
// ...
super.onBackPressed(); }
现在我在每节课上都会得到确认事件,但我只想在我的主要活动中得到它。我该怎么做
注:我必须在其他课程中扩展我的主要活动。这应该是要解决的主要问题,但我仍然不知道具体如何解决
# 1 楼答案
@Vala,如果您将片段添加到
Activty
,那么您可以使用FragmentManager
的BackSackEntryCount
,如下所示如果
backstackcount
为1,则意味着再次按下后退按钮时,剩余的frgament将从后堆栈中弹出,并且应用程序将退出# 2 楼答案
试试这个 在您的主要活动中
# 3 楼答案
像这样试试
# 4 楼答案
将其他类更改为