Изменить стандартное поведение onListItemClick для ListView - PullRequest
1 голос
/ 18 июня 2010

Можно ли как-то сделать, чтобы моя списочная активность (а точнее просмотр списка) выделяла элемент списка при нажатии на него ( нажато )? (... и оставайся выделенным) Поведение по умолчанию, просто выделяет элемент на мгновение, и оно постепенно становится черным ...

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

Было бы идеально, если бы хотя бы один элемент списка всегда был "выделен".

В худшем случае мне, возможно, придется отслеживать «последний нажатый элемент» (по умолчанию первый) и менять его фон или что-то в этом роде ... но я надеялся, что был более простой способ ...

Заранее спасибо! :)

1 Ответ

0 голосов
/ 19 июня 2010

Это не очень хорошая практика в Android; предметы не должны быть фокусируемыми и не должны фокусироваться на ощупь. Вы можете вместо этого использовать элементы списка с переключателями. Могут быть и другие, более красивые решения & mdash; Я был бы рад провести мозговой штурм, если бы вы обсудили свой вариант использования.


Обновление : с учетом нового контекста в вашем комментарии (переадресация / ответ / и т. Д. Контекстные действия с сообщениями), вот некоторые другие опции:

  1. Использовать стандартные контекстные меню, вызываемые долгим нажатием на элементах списка.
  2. Используйте новый шаблон Быстрые действия [1], как показано в приложении Twitter для Android.

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

Теперь, если вы планируете поддерживать многоэлементные контекстные действия, другой вариант - использовать шаблон пользовательского интерфейса флажок + скользящая панель действий, который использует Gmail.

[1] Быстрые действия Шаблон пользовательского интерфейса, как обсуждалось в Шаблонах проектирования пользовательского интерфейса Android в сеансе Google I / O 2010 (см. Слайд 16 в слайде слайдов ). Обратите внимание, что хотя код Quick Actions в данный момент отсутствует в Android SDK, Twitter для Android будет с открытым исходным кодом, поэтому код можно будет использовать в ваших приложениях.

...