【发布时间】:2014-12-21 10:13:20
【问题描述】:
所以我有一个片段类:
public class MyMapFragmentActivity extends Fragment implements LocationListener,
GoogleMap.OnMapClickListener, GoogleMap.OnMapLongClickListener {
在其中我定义了一个 SupportMapFragment:
private SupportMapFragment fragment;
我正在尝试使用 findFragmentById:
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
FragmentManager fm = getChildFragmentManager();
fragment = (SupportMapFragment) fm.findFragmentById(R.id.map);
if (fragment == null) {
fragment = SupportMapFragment.newInstance();
fm.beginTransaction().replace(R.id.content_frame, fragment).commit();
}
}
线
fragment = (SupportMapFragment) fm.findFragmentById(R.id.map);
尽管“片段”是 SupportMapFragment,但这会产生不可转换的类型错误: 无法将 android.app.fragment 转换为 com.google.android.gms.maps.SupportMapFragment !
我正在使用片段布局:
<?xml version="1.0" encoding="utf-8"?>
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:name="com.google.android.gms.maps.SupportMapFragment" />
【问题讨论】: