首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >onBackPressed()覆盖

onBackPressed()覆盖
EN

Stack Overflow用户
提问于 2014-02-25 11:18:10
回答 4查看 687关注 0票数 1

这是我的应用程序的结构:

活动A是一个ListViewActivity,有一个按钮来启动B活动。

在B活动中,在填写表单后,有一个按钮启动C活动。

C活动保存设置并创建一个新记录以在A活动中显示。C活动中的Button保存启动A活动。

如果用户在按下A活动返回B上的后退按钮时不止一次地遵循此过程(而不通过C返回,因为我启动它时设置了FLAG_ACTIVITY_NO_HISTORY),并且第二次按回返回到A时,这重复了等于创建记录数量的时间数。

用后退按钮关闭应用程序变成了一个漫长的过程。

我希望来自A活动的onBackPressed总是关闭应用程序。

英语不是我的语言,我希望我说的很清楚。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-02-25 11:21:39

总是像下面这样开始你的活动

代码语言:javascript
复制
    Intent intent = new Intent(current_activity_context, A.class);
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    startActivity(intent);
    finish();
票数 2
EN

Stack Overflow用户

发布于 2014-02-25 11:22:49

finish()方法将执行此操作。就像这样

代码语言:javascript
复制
Intent intent = new Intent(getApplicationContext(),
                Activity B.class);
        Activity A.this.startActivity(intent);

        finish();
票数 0
EN

Stack Overflow用户

发布于 2014-02-25 11:25:22

尝尝这个

代码语言:javascript
复制
@Override
public void onBackPressed() {
    // Do Here what ever you want do on back press;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22012563

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档