【问题标题】:OSMdroid: Markers above each other - how to clickOSMdroid:彼此上方的标记 - 如何单击
【发布时间】:2011-09-02 08:36:54
【问题描述】:

我对 OSMdroid 有一个大问题: 我有一张带有一堆标记的地图,其中一些彼此靠近,因此可绘制的标记彼此位于上方。
现在,当用户单击此类标记“堆栈”时,将执行每个标记的 onClickListener 中的代码。
我怎样才能阻止这种执行,而是显示“点击”的标记列表?

【问题讨论】:

    标签: android android-mapview marker osmdroid


    【解决方案1】:

    使用Touch 事件

    public boolean onTouchEvent(MotionEvent event) {
    
        switch (event.getAction()) {
            case MotionEvent.ACTION_DOWN: {
                //Add this item to array        
                break;
            }
            case MotionEvent.ACTION_UP: {
                //Show list     
                break;
            }
        }
    }
    

    【讨论】:

    • 这不起作用,因为它从 MapView 中删除了 ClickListener。我通过覆盖 OverlayItems-Class onTapUpListener 来解决它以返回一个数组 if 标记。
    • 不,这不会删除 clickListener,您可以在 ACTION_DOWN mapview.onClick() 中添加
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-01
    相关资源
    最近更新 更多