次のような JSONArray オブジェクトからの反復データがあります。
try{
for (int i = 0; i < arrResponse.length(); ++i){
JSONObject objResponse = arrResponse.getJSONObject(i);
Integer idShop = objResponse.getInt("ID");
String name = objResponse.getString("Name");
String address = objResponse.getString("Address");
Double slat = objResponse.getDouble("lat");
Double slong = objResponse.getDouble("long");
LatLng shopLocation = new LatLng(slat, slong);}}
反復データ (idShop、名前、住所など) を使用して、以下のコードでマップ上の関心のある場所をマークします。
map.addMarker(new MarkerOptions()
.position(shopLocation)
.title(idShop+" "+name)
.snippet(address)
.icon(BitmapDescriptorFactory.fromResource(R.drawable.ic_marker_shop)));
次に、このコードでマーカーによって作成されたすべてのオブジェクトにクリック リスナーを配置します。
map.setOnInfoWindowClickListener(new OnInfoWindowClickListener() {
@Override
public void onInfoWindowClick(Marker marker) {
// TODO Auto-generated method stub
Intent intent = new Intent(OrderActivity.this, Cart1Activity.class);
// intent.putExtra("IDShop", ""+idShop);
startActivity(intent);
}
});
マーカーをクリックして「idShop」データを取得し、それをインテントに渡すにはどうすればよいですか? setOnInfoWindowClickListener で次のコードを使用します。
intent.putExtra("IDShop", ""+idShop);
しかし、それは実際のデータを取得しません。