我有一个微调器,可以让我选择公司类型:汽车中心与卡车中心。
我从 JSON 中提取地址并在 AsyncTask 中使用地图标记显示它们。当我使用下面的代码时,无论公司类型如何,地图都会显示所有标记。所以我决定包含一个 do while 循环来添加地图对象,而 JSON 中的公司是“汽车中心”。我也会对“卡车中心”做同样的事情。
我的问题是 do while 循环根本没有标记显示在地图上,但是没有 do while 循环,所有标记都会显示。
do {
data1 = new LocationData(lati, longi, nameFirst1 + " " + nameLast1,otherinfo);
}
while (company1.equals("Car Center"));
locationList.add(data1);
if (str.equals("Car Center")) {
publishProgress(data1);
}else {}
}
public LocationData onProgressUpdate(LocationData data1 ) {
return data1;
}
protected void onPostExecute(Long result) {
for(LocationData data1 : locationList){
mMap.addMarker(new MarkerOptions()
.position(new LatLng(data1.getLat(), data1.getLongitude()))
.title(data1.getName())
.snippet(data1.getOther()));
}
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
str =(String)arg0.getSelectedItem();
Log.d("Spinner choice", str);
}