Предотвращение стрельбы onFocusChanged при прокрутке ScrollView

1

У меня проблема, когда в моей работе есть несколько объектов TextView. Больше, чем может поместиться на экране, поэтому я разместил их внутри ScrollView.

Теперь каждый элемент TextView помещается в RelativeLayout перед тем, как поместить его в ScrollView. Каждый объект RelativeLayout имеет назначенные onClickListener и onFocusChangedListeners. Каждый прослушиватель реализует метод, в котором появляется диалоговое окно, позволяющее пользователю редактировать значение, хранящееся в TextView.

Возникающая проблема заключается в том, что при прокрутке экрана происходит событие onFocusChangedListener, в результате чего диалог появляется для нескольких элементов одновременно.

Можно ли прокручивать прокрутку и предотвращать запуск onFocusedChanged?

Я могу отправить код, если потребуется, но его довольно большой, поскольку элементы, добавленные на страницу, выполняются так динамично. Это также означает, что для макета нет xml.

Я посмотрел на использование ScrollView onTouchListener, чтобы добавить флаг ignoreFocusChange, но кажется, что это не сработает, поскольку событие было атаковано в средние времена для одного прокрутки/перехода на экран.

Пожалуйста помоги

С Уважением,

Iain

Теги:
scrollview

1 ответ

0
Лучший ответ

Проведя некоторое время на этом, я обнаружил, что лучшим решением для меня было удалить onFocusChangedListener и заменить его на onTouchListener

  • 0
    Я сталкиваюсь с той же проблемой. К сожалению, я не могу удалить onFocusChangedListener или заменить его. Мне нужно найти способ действительно предотвратить стрельбу по FoncusChanged. Это не происходит в версии 4.x, только в версии 2.3.6.

Ещё вопросы

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