Android:将标记设为不可点击

时间:2015-12-28 11:47:56

标签: android google-maps google-maps-markers

您好我正在创建像

这样的标记
group

之后我想根据CURRENT_LAT和CURRENT_LNG将标记设置为不可点击。是否可以这样做

3 个答案:

答案 0 :(得分:4)

我使用了这种解决方法,当您点击marker

时返回true
getMap().setOnMarkerClickListener(new OnMarkerClickListener() {

    public boolean onMarkerClick(Marker marker) {
        return true;
    }
});

可以实施其他可能性implements OnMarkerClickListener,并在onMarkerClick()中将其与您不想点击并且不做任何事情的标记进行比较。

@Override
public boolean onMarkerClick(final Marker marker) {

    if (marker.equals(myMarker)) 
    {
        //Do nothing
    }
}

您还可以查看此问题:google-maps-api-v2-how-to-make-markers-clickable

答案 1 :(得分:1)

像这样设置Clickable。

#config/routes.rb
root 'home#home'         # -> routes go to controller actions, not views
resources :users, :posts # -> you can define multiple resources at once

GetAddress metgod()

     MarkerOptions marker=new MarkerOptions().position(resto).title(getAddress(28.6200, 77.2100));
    marker.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_BLUE));
    map.addMarker(marker);

   map.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
        @Override
        public boolean onMarkerClick(Marker marker) {
            if(marker.getTitle().equals(getAddress(28.6200, 77.2100))){
                Log.e("Delhi","Delhi");
                Log.e("Destance",""+distance(resto.latitude,resto.longitude,Delhi1.latitude,Delhi1.longitude,"M"));

            }else if(marker.getTitle().equals("Marker in Delhi1")){
                Log.e("Delhi1","Delhi1");

            }
                return false;

        }
    });

答案 2 :(得分:0)

也许你可以覆盖ClickListener。我不确定lat和lng值是否保存在Marker arg0事件中。

mMap.setOnMarkerClickListener(new OnMarkerClickListener()
                {
                    @Override
                    public boolean onMarkerClick(Marker arg0) {
                        return true;
                    }
                });  

希望它有所帮助。