0
OnMapReady在执行ReadCsvFile()之前被调用,它从CSV文件中获取latlng点。因此,当显示map时,它不会显示当前位置。我如何确保onMapReday仅在从文件中提取latLng点后才会调用?如何防止在 “googleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(latLng,17));”获取空指针异常GoogleMap在使用onMapReady时不显示当前位置
public void onMapReady(final GoogleMap googleMap) {
ReadCsvFile(this);
for (LocationHelperBean locationHelperBean : parameterList) {
latLng=new LatLng(Double.parseDouble(String.valueOf(locationHelperBean.getLatitude())), Double.parseDouble(String.valueOf(locationHelperBean.getLongitude())));
arrayPoints.add(latLng);
}
googleMap.setMyLocationEnabled(true);
googleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(latLng, 17));
googleMap.addMarker(new MarkerOptions().snippet("latitude:" + latitude + "longitude:" + longitude + "bearing:" + bearing + "accuracy:" + accuracy + "altitude" + altitude + "speed" + speed).position(latLng).draggable(true));
PolylineOptions polylineOptions = new PolylineOptions().add(latLng).width(6).color(Color.RED).geodesic(true);
polylineOptions.addAll(arrayPoints);
map.addPolyline(polylineOptions);
}
问题是什么? – cakan
ReadCsvFile从文件中获取latLng点。但是,由于onMapReady在ReadCsvFile之前执行,因此在显示map时latLng为null。如何防止这种情况发生?我怎么才能确保onMapReady只有在latLng有值后才被调用? –