【发布时间】:2018-06-12 08:08:29
【问题描述】:
我从 sqlite 加载标记,然后循环从 sqlite 获取数据,然后将标记放置到每个纬度和经度。有用。 但是当我尝试从每个标记获取信息窗口时,它不起作用。只需要一个信息窗口。
这是我的代码:
while (cursor.moveToNext()){
// mengambil koordinat lokasi ATM
title = cursor.getString(1).toString();
__global_endposition = cursor.getString(2).toString();
alamat = cursor.getString(3).toString();
String[] exp_endCoordinate = __global_endposition.split(",");
double lat_endposition = Double.parseDouble(exp_endCoordinate[0]);
double lng_endposition = Double.parseDouble(exp_endCoordinate[1]);
LatLng endx = new LatLng(lat_endposition, lng_endposition);
MarkerOptions options = new MarkerOptions()
.position(endx)
.title(title)
.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_ORANGE));
// mMap.addMarker(options);
Marker marker = googleMap.addMarker(options);
mapBuilder.include(marker.getPosition());
addedMarker = true;
googleMap.setOnInfoWindowClickListener(new GoogleMap.OnInfoWindowClickListener() {
@Override
public void onInfoWindowClick(Marker marker) {
Toast.makeText(getActivity(), alamat, Toast.LENGTH_SHORT).show();
}
});
}
这是我的 sqlite 记录: enter image description here
当我点击每个标记时,每个标记信息窗口只显示“Giant Ekspres, Jl. Urip Sumoharjo, Klitren, Gondokusuman, Kota Yogyakarta”。
【问题讨论】:
-
(1) 您想使用 toast 还是希望在信息窗口中显示附加信息? (2) 无需在每个循环上添加
setOnInfoWindowClickListener()。 (3)你是什么地图对象“mMap”或`googleMap“?
标签: android google-maps