Java 在AppCompativity中调用mapfragment
我试图在片段寻呼机的活动中使用谷歌地图,因此地图位于寻呼机后面,并且仍然能够与之交互,但无论我做什么,我都会得到空异常 我尝试使用SupportMapFragment,如下所示:Java 在AppCompativity中调用mapfragment,java,android,android-fragments,google-maps-api-3,supportmapfragment,Java,Android,Android Fragments,Google Maps Api 3,Supportmapfragment,我试图在片段寻呼机的活动中使用谷歌地图,因此地图位于寻呼机后面,并且仍然能够与之交互,但无论我做什么,我都会得到空异常 我尝试使用SupportMapFragment,如下所示: SupportMapFragment mapFragment = ((SupportMapFragment) getChildFragmentManager().findFragmentById(R.id.Map)); mapFragment.getMapAsync(this); 但是无法解析getC
SupportMapFragment mapFragment = ((SupportMapFragment) getChildFragmentManager().findFragmentById(R.id.Map));
mapFragment.getMapAsync(this);
但是无法解析getChildFragmentManager,因为我想它是一个AppCompatActivity
。
还有别的办法吗?可能吗?谢谢。请尝试动态添加它
MapFragment mMapFragment = MapFragment.newInstance();
FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
fragmentTransaction.add(R.id.llMapContainer, mMapFragment, "map");
fragmentTransaction.commit();
或者你可以得到这样的地图片段
mapFragment = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map));
if (mapFragment != null) {
mapFragment.getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(GoogleMap map) {
loadMap(map);
}
});
}
尝试动态添加它
MapFragment mMapFragment = MapFragment.newInstance();
FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
fragmentTransaction.add(R.id.llMapContainer, mMapFragment, "map");
fragmentTransaction.commit();
或者你可以得到这样的地图片段
mapFragment = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map));
if (mapFragment != null) {
mapFragment.getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(GoogleMap map) {
loadMap(map);
}
});
}
只需更改为getSupportFragmentManager(),只需更改为getSupportFragmentManager(),谢谢!我动态地做了,做得非常好:谢谢!我做得很有活力,而且做得很好:D