Android: ItemizedOverlay onTouchEvent и onTap перекрываются

1

В моем приложении требование - когда я касаюсь любого местоположения на карте, мне нужно создать новый оверлей и показать его с помощью маркера, и если я коснусь любого местоположения, которое помечено, я должен показать его данные в воздушный шар.

OnTap() и onTouchEvent(), написанные внутри моего класса ItemizedOverlay, выглядят следующим образом:

@Override
protected boolean onTap(int index) {
    if(!super.onTap(index)) {
        MyOverlayItem<OverlayItem> overlayItem = new MyOverlayItem<OverlayItem>(
            createItem(index).getPoint(), createItem(index).getTitle(), 
            createItem(index).getSnippet(), mapView, activity);
        overlayItem.onTap(createItem(index).getPoint(), mapView);       
    }
    return true;
}

@Override
public boolean onTouchEvent(MotionEvent event, MapView mapView) {
    GeoPoint point = mapView.getProjection().fromPixels(
            (int) event.getX(),
            (int) event.getY());
    addPoint(point);
    return true;
}

InTap() внутри MyOverlayItem выглядит следующим образом:

public boolean onTap(GeoPoint point, MapView mapView) {
    createBalloon(); //creates the balloon view.
    return true;
}

Моя проблема:

Если я добавляю этот onTouchEvent(), onTap() не получает вызов. Всегда добавляется новая точка.

Как я могу достичь своего требования? Я смущаюсь с обоими этими методами. Кто-нибудь может помочь мне. Спасибо заранее.

Теги:
android-mapview

1 ответ

-1
Лучший ответ

hi mathew проверить эту ссылку, которая может помочь вам решить вашу проблему

Ещё вопросы

Сообщество Overcoder
Наверх
Меню