【发布时间】:2017-11-21 11:43:01
【问题描述】:
我想设置不同标记的 OnMarkerClickListener。在这里,每当单击相应的标记时,我想打印 i 循环的变量值。所以我按照以下方式做了..但它不起作用,它在每次不同的标记点击时在 Snackbar 上显示相同的最后一个循环值 170 .. 但我想得到 0,10,20, 30....170 分别在小吃栏中的不同标记点击。
请帮忙...
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
// SETTING MARKER
for(int i=0;i<180;i=i+10) {
LatLng sydney = new LatLng(i, i);
mMap.addMarker(new MarkerOptions().position(sydney).title("Marker in Position"+i));
//ON MARKER CLICK
final int finalI = i;
mMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
@Override
public boolean onMarkerClick(Marker marker) {
Snackbar.make((View) findViewById(R.id.map),""+finalI,Snackbar.LENGTH_LONG).show();
return true;
}
});
}
}
这是由循环创建的标记 但我得到与 170 相同的值
【问题讨论】:
标签: android google-maps android-fragments google-maps-api-3 android-snackbar