Цвет выделения исчезает после добавления цвета фона в поле списка в BlackBerry - PullRequest
0 голосов
/ 29 ноября 2011

Мне удалось получить элементы списка в ListField и я могу распознать, какой элемент был нажат, используя метод navigationClick.Теперь я также добавил другой фон в свой ListField, переопределив метод рисования.Я в основном даю шаблон зебры в Listview, чтобы дифференцировать элементы списка.Но сейчас я не могу просмотреть основной момент.Но когда я прокручиваю список вниз и нажимаю, он распознает элемент.так что есть идеи, где я не так или как я могу изменить цвет подсветки?

Работает на: Устройство: 8520 ОС: 5.0

Заранее спасибо

1 Ответ

1 голос
/ 30 ноября 2011

Как указывает jprofitt, вы должны использовать drawListRow, чтобы лучше использовать ListField.

Для проблемы с фокусом ListField будет обрабатывать чертеж с фокусом для вас. Он будет нарисован до того, как будет вызван ваш код рисования, поэтому, чтобы избежать потери цвета фокуса, вам нужно прекратить рисовать полоску зебры для выбранной строки. Если вы добавите логику продолжения в начало цикла, вы снова увидите селектор.

if(x == getSelectedIndex()) { continue; }

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

...