片段

时间:2016-08-27 16:00:02

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

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

我想做的是致电

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

但mapFragment始终为空。

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

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

有人可以建议一种方法来实现这个目标吗?

2 个答案:

答案 0 :(得分:7)

使用此getChildFragmentManager();获取FragmentManager

中的Fragment

答案 1 :(得分:-1)

我能够使用以下代码:

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);
}