【发布时间】:2013-09-03 14:20:15
【问题描述】:
在我的以下代码中,getMap() 返回 null,这会停止应用程序。如果我不对地图做任何事情(即删除最后两行),它会正确显示。知道为什么吗?谢谢。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
FragmentManager fragmentManager = getSupportFragmentManager();
SupportMapFragment mapFragment = SupportMapFragment.newInstance();
mapFragmentId = mapFragment.getId();
FragmentTransaction transaction = fragmentManager.beginTransaction();
transaction.add(R.id.my_container, mapFragment);
transaction.commit();
mMap = mapFragment.getMap();
mMap.setMapType(GoogleMap.MAP_TYPE_HYBRID);
}
【问题讨论】:
-
tks @CommonsWare 以获得好的指点。
-
@CommonsWare 只是为了讨论,如果我在 onResume() 中注入代码
mMap = mapFragment.getMap()这样我就不必重写 onActivityCreated,这是一个不好的做法吗? tks -
是的,它不会避免应用程序崩溃
-
"这是一种不好的做法吗?" - 如果它有效,这可能不是一个坏习惯。不过,我不知道它是否有效。
标签: android google-maps-android-api-2