实际上我有一个屏幕,在上半部分屏幕上有一张地图,另一半有一个地址列表,当点击任何特定列表项目地图时显示该特定地址的标记,但事情是我想要的单击列表项以显示信息窗口。这是我工作的屏幕截图。
我想在蓝色标记上方的信息窗口,但我不能使用onMarkerClickListener。
我尝试过使用infoWindowAdapter,但我想这不是解决方案 有人可以帮忙吗?
答案 0 :(得分:3)
在数组中保存已添加标记的引用:
List<Marker> mMarkers = new ArrayList<Marker>();
@Override
public void onCreate(Bundle savedInstanceState) {
...
mMarkers.add(googleMap.addMarker(marker));
...
}
然后为您的ListView
:
listView.setOnItemClickListener(new ListView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
mMarkers.get(position).showInfoWindow();
}
});
注意:强>
您的标记必须以正确的顺序添加,即与ListView
项目的顺序相同。