我看到很多关于此的问题,但我找不到任何答案来解决我的问题,这是我的班级:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.mapa, container, false);
SupportMapFragment fm = (SupportMapFragment) getChildFragmentManager().findFragmentById(R.id.map);
googleMap = fm.getMap();
MarkerOptions options = new MarkerOptions();
options.position(LOWER_MANHATTAN);
options.position(BROOKLYN_BRIDGE);
options.position(WALL_STREET);
googleMap.addMarker(options);
String url = getMapsApiDirectionsUrl();
ReadTask downloadTask = new ReadTask();
downloadTask.execute(url);
googleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(BROOKLYN_BRIDGE,
13));
addMarkers();
return v;
}
我的布局是:
<com.google.android.gms.maps.MapView
android:id="@+id/map"
class="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentTop="true" />
我有这个错误
处理:PID:4701 java.lang.NullPointerException:尝试调用虚拟方法&#39; com.google.android.gms.maps.GoogleMap com.google.android.gms.maps.SupportMapFragment.getMap()&#39;在null 对象参考 at greetrack.estg.ipvc.greentrack.Mapa.onCreateView(Mapa.java:96)
我知道我的错误是在fm中返回null但我不知道...
答案 0 :(得分:0)
我的布局就是这个
在该布局中,将com.google.android.gms.maps.MapView
替换为fragment
。要在布局资源中嵌入静态片段,请使用<fragment>
元素。