【发布时间】:2015-04-12 08:12:51
【问题描述】:
我尝试在滑动视图的片段中创建地图,但是使用此代码我在 logcat 中有错误,这是代码:
public class Mapa extends Fragment {
private static final double MARKER_LATITUDE = 42.027325;
private static final double MARKER_LONGITUDE = -8.640842;
GoogleMap map;
private FragmentActivity myContext;
public Mapa() {
}
/**
* Returns a new instance of this fragment for the given section
* number.
*/
public static Mapa newInstance() {
Mapa fragment = new Mapa();
return fragment;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View android = inflater.inflate(R.layout.mapa, container, false);
final LatLng position = new LatLng(MARKER_LATITUDE, MARKER_LONGITUDE);
// camera position
map.setOnCameraChangeListener(new GoogleMap.OnCameraChangeListener()
{
@Override
public void onCameraChange(CameraPosition arg0)
{
CameraUpdate cu = CameraUpdateFactory.newLatLngZoom(position, 17);
map.animateCamera(cu);
map.setOnCameraChangeListener(null);
map.setMapType(GoogleMap.MAP_TYPE_HYBRID);
}
});
return android;
}
@Override
public void onAttach(Activity activity) {
myContext=(FragmentActivity) activity;
super.onAttach(activity);
}
@Override
public void onDestroyView() {
super.onDestroyView();
Fragment f = getFragmentManager().findFragmentById(R.id.mapFragment);
if (f != null)
getFragmentManager().beginTransaction().remove(f).commit();
}
}
这是 logcat 错误:
java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法 'void com.google.android.gms.maps.GoogleMap.setOnCameraChangeListener(com.google.android.gms.maps.GoogleMap$OnCameraChangeListener)' 在greetrack.estg.ipvc.greentrack.Mapa.onCreateView(Mapa.java:49)
这是我第一个使用地图的应用程序,可能有问题
【问题讨论】:
标签: android google-maps android-fragments