由于以下错误无法添加到片段事务,您将如何解决此问题?
add() in FragmentTransaction cannot be applied to:
Expected Parameters: Actual Arguments:
int R.id.mapWithOverlay
android.support.v4.app.Fragment _mapFragment (com.google.android.gms.maps.MapFragment)
String "map"
代码如下:
android.support.v4.app.FragmentTransaction fragTx = getSupportFragmentManager().beginTransaction();
if (fragTx != null) {
_mapFragment = MapFragment.newInstance(mapOptions);
fragTx.add(R.id.mapWithOverlay, _mapFragment, "map");
fragTx.commit();
} else {
Toast.makeText(this, "Could not display the map", Toast.LENGTH_SHORT).show();
}
提前致谢。
答案 0 :(得分:7)
您使用的是SupportMapFragment
(来自支持包),而不是MapFragment
常规MapFragment
无效SupportFragmentManager
。
看到区别?
private class MyMap1 extends SupportMapFragment {
}
private class MyMap2 extends MapFragment {
}
答案 1 :(得分:0)
我更改为以下内容以使其正常工作,希望这会对其他人有所帮助吗?
FragmentTransaction fragTx = getFragmentManager().beginTransaction();
if (fragTx != null) {
_mapFragment = MapFragment.newInstance(mapOptions);
fragTx.add(R.id.mapWithOverlay, _mapFragment, "map");
fragTx.commit();
} else {
Toast.makeText(this, "Could not display the map", Toast.LENGTH_SHORT).show();
}