Android - 百度地图 - OnBusStation点击无效问题

来源:互联网 发布:mac版ai cs6破解补丁 编辑:程序博客网 时间:2024/04/30 12:43

之前遇到一个问题,就是添加公交线路后点击公交图标没有任何反应,而demo点击会出Toast提示.查看源码发现:

需要设置BaiduMap的Marker监听….

mBaiduMap.setOnMarkerClickListener(overlay);

原理是:

//实现Marker的点击监听public abstract class OverlayManager implements OnMarkerClickListener, OnPolylineClickListenerpublic class BusLineOverlay extends OverlayManager{  public boolean onBusStationClick(int var1) {  //默认点击显示Toast        if(this.a.getStations() != null && this.a.getStations().get(var1) != null) {            Toast.makeText(a.a().e(), ((BusStation)this.a.getStations().get(var1)).getTitle(), 1).show();        }        return false;    }    public final boolean onMarkerClick(Marker var1) {    //如果被点击的marker是公交站点的话,调用onBusStationClick        return this.c != null && this.c.contains(var1)?this.onBusStationClick(this.c.indexOf(var1)):false;    }}

因为公交的每一个小车是一个Marker,所以不添加mBaiduMap.setOnMarkerClickListener(overlay);的话是无法回调的。

0 0
原创粉丝点击