#android #listview #event-handling #listactivity
#Android #просмотр списка #обработка событий #listactivity
Вопрос:
У меня есть ListActivity, и я хочу отреагировать на onListItemClick (ListView l, View v, int position, длинный идентификатор).
Но я также хочу знать, щелкнул ли пользователь в левой или правой части экрана. Есть ли какие-либо изменения, которые я могу получить для MotionEvent из onListItemclicked-метода.
У меня есть ListView. В каждой строке слева указано имя, а справа — средний результат голосования. Когда пользователь нажимает в строке слева, я хочу загрузить действие, которое показывает информацию об имени. Когда пользователь нажимает на правую часть строки, я хочу загрузить действие, которое позволяет пользователю голосовать за название. Я хотел бы использовать onListItemClick (ListView l, View v, int position, длинный идентификатор) для получения строки, в которой я нахожусь, поскольку это так просто. Но как я могу узнать, щелкнул ли пользователь слева или справа.
Могу ли я запросить какой-либо объект для текущего обрабатываемого события движения?
Спасибо!
Ответ №1:
Как насчет установки OnClickListener
как для левого, так и для правого вида? При необходимости вы могли бы дополнить представления так, чтобы они покрывали большую часть строки, чем в настоящее время. Тогда вы все равно получите onListItemClick
, когда щелчок происходит в «нейтральной» области.
Комментарии:
1. У меня есть только один,
ListView
который может дать мнеonListItemClick
. Но внутри каждого элемента списка у меня есть четыреTextView
s (2 слева друг над другом, 2 справа друг над другом). Когда я пишу это, мне интересно, что я получаю какView v
отonListItemClick
. Получу ли я некоторый вид, который отражает весь элемент в списке, или я получу один из своихTextView
, чтобы я мог определить сторону, которая была нажата, из этого?2. На самом деле вы можете установить
OnClickListener
индивидуально для каждого из ваших TextViews