getFragmentManager到Fragment

时间:2015-03-16 02:01:27

标签: android-fragmentactivity slidingmenu

我正在尝试将活动转换为片段,并且遇到getFragmentManager问题。

我的xml文件:

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/map"
tools:context="xpak.probandosidebar.MapsFragment"
class ="com.google.android.gms.maps.SupportMapFragment" />

和我的java文件:

public class MapsFragment extends Fragment {

private GoogleMap mMap;

@Override
public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState){
    return inflater.inflate(R.layout.fragment_maps,container,false);
}

@Override
public void onStart() {
    super.onStart();
    setUpMapIfNeeded();
}

@Override
public void onResume() {
    super.onResume();
    setUpMapIfNeeded();
}


private void setUpMapIfNeeded() {
    if (mMap == null) {
        //here is the error
       mMap = ((SupportMapFragment) getFragmentManager().findFragmentById(R.id.map))
                .getMap();

        if (mMap != null) {
            setUpMap();
        }
    }
}

private void setUpMap() {
    mMap.addMarker(new MarkerOptions().position(new LatLng(0, 0)).title("Marker"));
}}

错误是:无法将android.app.Fragment强制转换为com.google.android.gms.maps.SupportMapFragment

我搜索到的都没有成功,我希望你能帮助我

来自智利的问候

1 个答案:

答案 0 :(得分:0)

尝试这样做

<com.google.android.gms.maps.SupportMapFragment

xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/map"
tools:context="xpak.probandosidebar.MapsFragment"
class ="com.google.android.gms.maps.SupportMapFragment" />