Для практической цели я создаю настраиваемый элемент Tooltip. Чтобы использовать элемент управления Tooltip, хост UIControl (например, Button
) будет назначен моему элементу управления Tooltip, и я хочу, чтобы мой элемент Tooltip мог прослушивать событие нажатия мыши на элементе управления хостингом (то есть Button
) и показывать/соответственно отклонить.Android: Как прослушивать MouseEvent на другом представлении и обрабатывать событие в моем пользовательском представлении
У меня возникли проблемы с поиском способа прослушивания событий мыши управления хостингом. Я пробовал:
Установить хостинг Контрольного
setOnTouchListener
, это работает, но он будет перекрывать существующуюOnTouchListener
хостинговой Control, таким образом undeserable.Перейдите на адрес управления хостингом
ViewGroup
и добавьте ** наблюдателя вViewGroup
. Но нет никакого способа наблюдать за событием мыши наViewGroup
.
Так слушает событие мыши другого управления, выполненное из пользовательского представления, если да, то какой рекомендуемый способ его реализовать?
Спасибо.
Я также думал, что другой способ сделать это, как следует:
Получить
ViewGroup
хостинговой контроля;В окне
ViewGroup
добавьте прозрачный вид для прослушивания события мыши.В обработчике события мыши прозрачного представления проверьте, произошло ли событие мыши в управлении хостинга.
Если это произошло в Хостинговом контроле, ответьте соответствующим образом.
Я попытаюсь использовать этот подход после публикации моего вопроса, но, похоже, это ресурсоемкий способ реализации чего-то, казалось бы, простого.
Я сообщу вам, если этот подход работает или нет, любые комментарии/мысли очень ценятся.
Спасибо ~!
Как я понимаю, у вас есть пользовательские кнопки, которые уже имеют собственный OnTouchListener. Я прав? –