我有一个导航抽屉,我想在用户点击按钮时打开地图。问题是我无法替换当前片段并设置我的SupportMapFragment。我认为SupportMapFragment也是一个片段,但我必须是错的。我做错了什么?我该如何解决?
课程地图
public class Map extends SupportMapFragment {
private GoogleMap map;
//Position
public static final LatLng TEMPORALPOSITION = new LatLng(4.667184, -74.059463);
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
return inflater.inflate(R.layout.map, container, false);
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
map = getMap();
map.moveCamera(CameraUpdateFactory.newLatLng(TEMPORALPOSITION));
}
}
onNavigationDrawerItemSelected函数
@Override
public void onNavigationDrawerItemSelected(int position) {
FragmentManager fragmentManager = getFragmentManager();
Fragment fragment = new Fragment();
switch(position) {
case 0:
fragment = new Stations();
break;
case 1:
fragment = new Favorites();
break;
case 2:
fragment = new Map();
break;
}
fragmentManager.beginTransaction()
.replace(R.id.container, fragment)
.commit();
}
在onNavigationDrawerItemSelected函数中我遇到了问题。
下面你可以看到我的片段 map.xml 也许它可以提供帮助。
<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.MapFragment"/>
谢谢!
编辑:
我在我的xml中更改了android:name属性..但我仍然遇到了主要问题。看一下屏幕显示如下。
答案 0 :(得分:0)
xml中的android:name
属性不正确。它应该是:
android:name="com.google.android.gms.maps.SupportMapFragment"
尝试修复它。