【问题标题】:Android Pager using Fragment使用 Fragment 的 Android 寻呼机
【发布时间】:2016-04-30 07:01:07
【问题描述】:

在 android Coding 中我有一些疑问。我正在研究 Paging 概念。 我有两个片段。一个是Master Fragment,另一个是Transaction Fragment。 在 master 中,有一个 Button 可用。那是供应商。如果我们单击供应商按钮,我们可以创建一个新的供应商详细信息。 它的工作很好,可以继续前进。也就是说,如果我们单击供应商按钮,则会打开下一页。但是,如果按它向后返回,则不起作用。 通过按从新供应商创建到供应商的后退按钮,它可以工作。但是如果我们按下从供应商到寻呼机片段的返回按钮,它就不起作用了。 在这里,我附上了编码和屏幕截图。请帮我。提前致谢。

屏幕截图


Master Transaction Vendor Vendor Creation 以下是我们点击后退按钮时的代码

Fragment fragment = new MainActivity();
                    FragmentManager fragmentManager = getFragmentManager();
                    fragmentManager.beginTransaction()
                            .replace(R.id.frag_act_cont, fragment, "Class Name").commit();

【问题讨论】:

    标签: android


    【解决方案1】:

    我不知道我是否正确理解了您的问题。看看 Android 开发者页面here

    为了能够提供正确的后退导航,您必须将片段添加到后退堆栈中

    getSupportFragmentManager().beginTransaction()
                           .add(detailFragment, "detail")
                           // Add this transaction to the back stack
                           .addToBackStack()
                           .commit();
    

    【讨论】:

      【解决方案2】:

      当您按下后退按钮时,会调用 onBackPressed 方法,该方法会导致活动完成。看看这篇文章:http://stackoverflow.com/questions/22011751/life-cycle-of-android-activity-after-pressing-back-button

      试试这段代码。在你的 backpress 方法上做这样的事情:

      @Override
          public void onBackPressed() {
              super.onBackPressed();
              FragmentManager fragmentManager = getSupportFragmentManager();
              fragmentManager.beginTransaction().replace(R.id.frag_act_cont, "Class Name").commit();
          }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-03-31
        • 1970-01-01
        • 1970-01-01
        • 2019-01-29
        • 1970-01-01
        • 2012-03-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多