我遇到的问题是我试图让谷歌地图api
在我的应用中运行。以前有它工作,但我已经添加导航抽屉到我的应用程序,使用不同类型的片段 android.app.Fragment ,当我添加代码到时,地图使用FragmentActivity
片段类和扩展android.app.Fragment
我得到以下errors
。
错误:(46,63)错误:找不到符号方法getSupportFragmentManager()
错误:(66,48)错误:不兼容的类型:MyMapFragment无法转换为Context
错误:(66,171)错误:不兼容的类型:MyMapFragment无法转换为Context
这是我的地图片段类
public class MyMapFragment extends android.app.Fragment implements OnMapReadyCallback {
private GoogleMap mMap;
public MyMapFragment() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment_map, container, false);
return view;
// Obtain the SupportMapFragment and get notified when the map is ready to be used.
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
}
继承了fragment_map.xml
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/map"
android:name="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="wit.ie.mightyangler.Fragment.MapFragment" />
答案 0 :(得分:0)
使用不支持版本
MapFragment mapFragment = (MapFragment) getFragmentManager().findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
和xml
<fragment
xmlns:android="http://schemas.android.com/apk/res/android"
android:name="com.google.android.gms.maps.MapFragment"
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"/>