getSupportFragmentManager()给出null

时间:2017-05-09 10:19:38

标签: android google-maps

我正在尝试显示地图,但谷歌地图为空。我的代码是 - :

supportMapFragment = (SupportMapFragment)getSupportFragmentManager().findFragmentById(R.id.add_event_map);

supportMapFragment.getMapAsync(new OnMapReadyCallback() {
     @Override
     public void onMapReady(GoogleMap googleMap) {

         mgoogleMap = googleMap;
     }
});

mgoogleMap.getUiSettings().setZoomControlsEnabled(true);

我在最后一行得到空指针异常 - :

mgoogleMap.getUiSettings().setZoomControlsEnabled(true);

3 个答案:

答案 0 :(得分:1)

您必须等待onMapReady来电,之后mgoogleMap将不会null

 @Override
 public void onMapReady(GoogleMap googleMap) {
     mgoogleMap = googleMap;
     mgoogleMap.getUiSettings().setZoomControlsEnabled(true);
 }

答案 1 :(得分:0)

地图准备就绪后设置缩放控件。

supportMapFragment = (SupportMapFragment)getSupportFragmentManager().findFragmentById(R.id.add_event_map);

supportMapFragment.getMapAsync(new OnMapReadyCallback() {
     @Override
     public void onMapReady(GoogleMap googleMap) {

         mgoogleMap = googleMap;

mgoogleMap.getUiSettings().setZoomControlsEnabled(true);
     } });

答案 2 :(得分:0)

mgoogleMap.getUiSettings().setZoomControlsEnabled(true)onMapReady之前执行 您应该在onMapReady

中添加代码