首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有碎片的抽屉&后扣子

有碎片的抽屉&后扣子
EN

Stack Overflow用户
提问于 2017-05-06 14:03:02
回答 1查看 60关注 0票数 0

因此,我是Android开发的新手,我一直在努力弄清楚如何能够在片段上使用back按钮,而不是关闭应用程序,而是让它在第一次活动时返回。Google收件箱是如何工作的,如果再按后退按钮,它就会关闭应用程序。我要做的是遵循以下代码

https://github.com/g60madman/AndroidFragmentNavigationDrawer/blob/master/app/src/main/java/com/chrisrisner/fragmentsample/MainActivity.java

在代码中,它使用Google抽屉中的默认功能来关闭抽屉,如果抽屉是打开的,然后退出。

代码语言:javascript
复制
@Override
public void onBackPressed() {
    DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
    if (drawer.isDrawerOpen(GravityCompat.START)) {
        drawer.closeDrawer(GravityCompat.START);
    } else {
        super.onBackPressed();
    }
}

我在流中搜索了所有的堆栈,但仍然缺少人们提供的建议,因为他们的代码在这段代码中似乎不起作用。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-06 14:08:48

在您的FragmentTransaction上,您应该使用以下方法

fragmentTransaction.addToBackStack(yourTag)

在此之前

.commit()

这样,当你点击“后退”按钮时,你就会返回,而不是关闭这个应用程序。文档:https://developer.android.com/reference/android/app/FragmentTransaction.html#addToBackStack(java.lang.String)

更新:41121

fragmentManager.beginTransaction().replace(R.id.flContent,片段).commit();

应改为

fragment).addToBackStack(null).commit();fragmentManager.beginTransaction() .replace(R.id.flContent )

希望它能帮上忙

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43821354

复制
相关文章

相似问题

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