如何在谷歌地图上显示多个标记

我想在Google Maps android上显示带有多个标记的位置,问题是当我运行我的应用程序时,它只显示一个位置/标记,这是我的代码:

public class koordinatTask extends AsyncTask<String, String, String>

{

@Override

protected void onPreExecute() {

super.onPreExecute();

setProgressBarIndeterminateVisibility(true);

}

protected String doInBackground(String... args) {

String url = "http://absc?action=p04&prov="+link_kode+"&tipe=";

JSONArray data = null;

try {

JSONParser jParser = new JSONParser();

JSONObject json = jParser.getJSONFromUrl(url);

// Getting Array of data

data = json.getJSONArray(real_data);

System.out.println("realisasi done");

for(int i = 0; i < data.length(); i++){

JSONObject c = data.getJSONObject(i);

HashMap<String, String> map = new HashMap<String, String>();

HashMap<String, Double> map1 = new HashMap<String, Double>();

x_lat = c.getDouble(x_cord);

y_long = c.getDouble(y_cord);

label = c.getString(prov_label);

map1.put(x_cord, x_lat);

map1.put(y_cord, y_long);

map.put(prov_label, label);

ProvinsiList.add(map);

ProvinsiList.add(map1);

System.out.println(x_lat);

}

} catch (JSONException e) {

e.printStackTrace();

}

return null;

}

@Override

protected void onPostExecute(String file_url) {

LatLng MAP_PUPI = new LatLng(x_lat, y_long);

Marker Pupi = map.addMarker(new MarkerOptions().position(

new LatLng(x_lat, y_long)).title(label));

map.moveCamera(CameraUpdateFactory.newLatLngZoom(MAP_PUPI, 15));

map.animateCamera(CameraUpdateFactory.zoomTo(10), 2000, null);

}

}

我不知道我的错在哪里,希望有人能帮助我解决我的问题,非常感谢你

回答:

用这个:

for (int i = 0; i < yourArrayList.size(); i++) {

double lati=Double.parseDouble(pins.get(i).latitude);

double longLat=Double.parseDouble(pins.get(i).longitude);

MAP.addMarker(new MarkerOptions().position(new LatLng(lati,longLat)).title(pins.get(i).pinname).snippet(pins.get(i).address));

}

或者,您也可以使用以下命令:

 for(int pin=0; pin<pins.size(); pin++)

{

LatLng pinLocation = new LatLng(Float.parseFloat(pins.get(pin).latitude), Float.parseFloat(pins.get(pin).longitude));

Marker storeMarker = map.addMarker(new MarkerOptions()

.position(pinLocation)

.title(pins.get(pin).pinname)

.snippet(pins.get(pin).address)

);

}

其中 和 是存储在数组列表中的具有不同名称的字符串.....

以上是 如何在谷歌地图上显示多个标记 的全部内容, 来源链接: utcz.com/qa/432942.html

回到顶部