2

OSMDroid lib を使用して OpenStreetMaps アプリケーションを作成しています。OverlayItem 配列にマーカーを追加してすべてを表示するには、LongPress ジェスチャが必要ですが、LongPress にアクセスできません。

GestureListener を試してみましたが、GestureDetector (現在は廃止されています) を使用して onTouch イベントをオーバーライドしましたが、この問題の解決策が見つかりません。

ジェスチャを取得する唯一の方法はsetOnLongClickListenerを使用することですが、マップを長押しするかパンするかを選択する必要があり、貪欲で両方が必要です:p

誰にもアイデアはありますか?

よろしく!

4

2 に答える 2

0
private void setupGestureListener() {
    GestureDetector.SimpleOnGestureListener gestureListener = new GestureDetector.SimpleOnGestureListener() {

        @Override
        public void onLongPress(MotionEvent e) {
            //do something
        }
    };

    final GestureDetector gestureDetector = new GestureDetector(getContext(), gestureListener);
    setOnTouchListener(new OnTouchListener() {
        @Override
        public boolean onTouch(View view, MotionEvent motionEvent) {
        return gestureDetector.onTouchEvent(motionEvent);
        }
    });
}
于 2013-05-08T18:34:59.423 に答える