你好,谢谢,
我正在尝试从USGS网站解析经度和纬度数据,然后使用for循环为地图活动中的每次地震设置一个图钉。此值的格式 [-102.684,38.47,5] ,其中-102.684、38.47和5分别是经度,纬度和深度
这是我在maps活动中的for循环:
for (int i = 0; i < 30; i++) {
String finalLongitudeString = longitudeArray[i].substring(1);
double longitudeDouble = Double.parseDouble(finalLongitudeString);
String finalLatitudeString = latitudeArray[i];
double latitudeDouble = Double.parseDouble(finalLatitudeString);
LatLng earthquake = new LatLng(latitudeDouble, longitudeDouble);
mMap.addMarker(new MarkerOptions().position(earthquake).title(locationArray[i]));
}
这是我从JSON提取数据的方式:
coordinatesArray = coordinates.split(",");
longitude = coordinatesArray[0];
latitude = coordinatesArray[1];
depth = coordinatesArray[2];
longitudeArray[i] = longitude;
latitudeArray[i] = latitude;
depthArray[i] = depth;
locationArray[i] = location;
我正在使用longitudeArray [i] .substring(1)删除经度值开头的[。
当我去地震活动时,应用程序崩溃,并显示错误“尝试在空对象上调用虚拟方法'java.lang.String java.lang.String.substring(int)'”
但是,当我重新打开应用程序时,它不会崩溃。 以下是崩溃后打开应用后的外观截图: LsitView of earthquakes Map view of earthquakes
此问题被标记为重复,但是我在标记为重复的文章中找不到我想要的答案。