首页 > 解决方案 > 当我尝试通过纬度和经度时抛出一个空指针

问题描述

我正在尝试将 Latlng 从 MapsAutocomplete 位置活动传递给我拥有地图视图的地图活动,但是当我尝试将 lat lng 传递给 moveCamera 方法时,它显示空指针异常,但在我的日志中我能够获得经度和纬度可以任何人都可以帮我解决这个问题。谢谢

我将 latlng 传递给另一个活动的方法:

    private void NavigateToMaps(LatLng latLng){

    Intent intent = new Intent(Maps2.this,Maps.class);
    intent.putExtra("Location", latLng);
    startActivity(intent);
    Log.d(TAG, "NavigateToMaps: Clicked");

}

在我需要在地图指针视图中显示地址的接收活动中:

@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.map_view);

    getLocationPermission();
    LatLng locationAdd = getIntent().getExtras().getParcelable("Location");

    Log.d(TAG, "onCreate: location" + locationAdd);

    double latitude1 = locationAdd.latitude;
    double longitude1 = locationAdd.longitude;

    moveCamera(new LatLng(latitude1,longitude1),DEFAULT_ZOOM,"SelectedLocation");


}

    private void moveCamera(LatLng latLng, float zoom,String tittle){
    Log.d(TAG, "location: moving the camera to: lat: " + latLng.latitude + ", lng: " + latLng.longitude );
    mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(latLng, zoom));
    MarkerOptions options = new MarkerOptions()
            .position(latLng)
            .title(tittle);
    mMap.addMarker(options);
}

在我的日志中,我能够获得 latLng 但会抛出空指针:

引起:java.lang.NullPointerException:尝试在 com 的空对象引用上调用虚拟方法 'void com.google.android.gms.maps.GoogleMap.moveCamera(com.google.android.gms.maps.CameraUpdate)' .example.mappy.Maps.moveCamera(Maps.java:60)

2020-04-24 18:34:30.028 4051-4051/com.example.mappy D/Maps: onCreate: locationlat/lng: (13.007805,80.1273649) 2020-04-24 18:34:30.028 4051-4051/com. example.mappy D/Maps:位置:将相机移动到:lat:13.007805,lng:80.1273649

标签: javaandroidgoogle-maps

解决方案


推荐阅读