ViewPager 内的 CameraUpdate、SupportMapFragment,第二次未加载

CameraUpdate, SupportMapFragment inside ViewPager, not loading second time

我在将 SupportMapFragment 放置在包含 5 个选项卡的 viewpager 的片段中时遇到问题,当 viewpager 第一次加载地图时一切正常,但从另一个选项卡返回时不显示任何内容。我加载地图如下:

@Override
public void onActivityCreated(Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
    FragmentManager fm = getFragmentManager();
    mapFragment = (SupportMapFragment) fm.findFragmentById(R.id.map_estate);
    if (mapFragment == null) {
        mapFragment = SupportMapFragment.newInstance();
        fm.beginTransaction().replace(R.id.map_estate, mapFragment).commit();
    }
    mapFragment.getMapAsync(this);
}

然后像这样使用它:

@Override
public void onMapReady(GoogleMap googleMap) {
    this.map = googleMap;
    this.map.setMyLocationEnabled(true);
    this.map.setMapType(GoogleMap.MAP_TYPE_HYBRID);
    this.map.getUiSettings().setMyLocationButtonEnabled(false); 
    CameraUpdate cameraUpdate = CameraUpdateFactory.newLatLngZoom(center, 16);
    mapFragment.getMap().moveCamera(cameraUpdate);
}

有人面临同样的问题吗?提前致谢

FragmentManager fm = getChildFragmentManager(); 替换 FragmentManager fm = getFragmentManager(); 解决了问题。