我正在尝试显示地图,但谷歌地图为空。我的代码是 - :
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);
答案 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
。