findFragmentById(R.id.map)在Android L中返回null

时间:2015-01-25 16:27:41

标签: android google-maps google-play-services android-5.0-lollipop android-maps-v2

在Android 4.4中测试基于位置的应用时,我们能够通过Android地图v2正确查看和使用地图

自从我升级到Android L以来,它无法使用以下代码获取MapFragment:

  1. 在MainActivity中有一个FrameLayout,我在其中加载ShowMapFragment。

  2. 在ShowMapFragment中有一个MapFragment可以显示地图。

  3. 在'OnCreateView()'方法中 mapFragment = (MapFragment)getFragmentManager().findFragmentById(R.id.map); map = mapFragment.getMap();

  4. mapFragment将变为null。对此有何帮助?

1 个答案:

答案 0 :(得分:14)

知道了。如果其他人面临同样的问题,请发布此信息。基本上我们必须使用getChildFragmentManager()而不是getFragmentManager(),因为MapFragment位于另一个fragemnt中。请参阅Rhisiart here的答案。