在活动中接收唯一的意图/捆绑值

时间:2014-08-17 10:20:49

标签: android fragment

我有一个 1)MainActivity。 2)片段1(Listview) 3)片段2(Listview) 4)片段3(Textview)

首次启动应用时,我可以成功启动Fragment 1。 然后,一旦我点击片段1上的任何列表项,就会启动片段2。我已经使用以下条件处理了这两个片段,以区分我的MainActivity

    if (this.getIntent().getExtras()
             == null) {
        fragmentManager.beginTransaction()
                .replace(R.id.restaurantlist, Fragment1).commit();

    } else {


        String id = String.valueOf(getIntent().getExtras().getString(
                "restaurant_id"));
        fragmentManager.beginTransaction()
                .replace(R.id.offerlist, Fragment2).commit();
    }

现在如何通过单击Fragment 2上的列表项来移动到Fragment 3? 现在,我也使用putEctra和getExtra“id”。对于片段2和片段3.但我如何使用它来区分上述代码?

1 个答案:

答案 0 :(得分:0)

你的问题对我来说不够明确。如果我找到了你,你有3个片段,并且你想要同时展示它们(例如在平板电脑中)。如果不是这种情况,请不要使用至少您现在使用它的方式,而是使用其他活动,因为使用不需要它们的片段只会使您的应用程序更复杂。

无论如何,我认为你的活动中有3个容器。当应用程序开始添加它们! 。还为片段1和片段2添加了一个onItemClike监听器。所以当你点击项目时,你就会发现它。现在,只要发生点击,通知其他片段显示相关项目。要做到这一点,你只需要在片段2和片段3中定义一个公共方法。

您还可以使用片段管理器show()和hide()方法在必要时隐藏片段。