【问题标题】:getSupportFragmentManager() inside a fragment inside a fragmentgetSupportFragmentManager() 在一个片段里面 一个片段里面
【发布时间】:2016-08-27 16:00:01
【问题描述】:

我有一个导航抽屉活动,并且片段像往常一样用于导航抽屉的不同项目。导航抽屉的第一项中有一个选项卡布局。选项卡布局已使用 viewpager 实现。这个viewpager里面有一张地图。

我想做的是打电话

SupportMapFragment mapFragment = (SupportMapFragment) getActivity().getSupportFragmentManager().findFragmentById(R.id.map);

但 mapFragment 始终为空。

我花了2个多小时应用了很多方法,但都没有成功。

据我所知,这里的问题是这样的。 getActivity() 方法返回导航抽屉活动。 getSupportFragmentManager() 返回附加到导航抽屉的片段。但地图不在那个片段中。地图位于视图分页器的片段内。

谁能建议一种方法来实现这一点?

【问题讨论】:

    标签: android google-maps android-fragments android-viewpager


    【解决方案1】:

    使用这个getChildFragmentManager();Fragment 中获取FragmentManager

    【讨论】:

      【解决方案2】:

      我可以使用如下代码:

      private void setupViewPager(ViewPager viewPager) {
          ViewPagerAdapter adapter = new ViewPagerAdapter(getChildFragmentManager());
          adapter.addFragment(new OneFragment(), "ONE");
          adapter.addFragment(new TwoFragment(), "TWO");
          adapter.addFragment(new ThreeFragment(), "THREE");
          viewPager.setAdapter(adapter);
      }
      

      【讨论】:

        猜你喜欢
        • 2011-10-04
        • 1970-01-01
        • 2020-12-01
        • 2015-01-06
        • 2017-09-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-03-15
        相关资源
        最近更新 更多