Мне нужно реализовать список изображений и кнопок. У меня есть 6 изображений, служащих разделителями и всего 14 кнопок с пользовательским фоном. Список имеет полноэкранный (800 × 600) фон, изображения разделителя - 800 × 30 пикселей, а кнопки имеют одинаковый размер (все кнопки имеют одинаковое фоновое изображение). Кроме того, мне нужен специальный индикатор прокрутки: две мигающие стрелки сверху и снизу. Стрелки должны быть показаны или скрыты в соответствии с положением прокрутки.Прокручиваемый список кнопок и замедление изображений
У меня есть некоторые другие элементы GUI, включая GLSurfaceView, скрытые с помощью View.GONE, поскольку список показан поверх них.
Проблема в том, что эта установка работает слишком медленно на относительно мощных телефонах, таких как Galaxy Nexus или Desire HD.
Я попробовал два различных подхода:
- с использованием ListView на основе этого урока: http://android.amberfog.com/?p=296
- Положите все кнопки и изображения в один LinearLayout и использовать его в качестве ребенка в ScrollView. Для того, чтобы скрыть и показать мигающие стрелки определяет положение прокрутки с помощью переопределения onScrollChanged (Synchronise ScrollView scroll positions - android)
И реализация работает медленно, в зависимости от фактического телефона. Реализация ScrollView обычно быстрее, но имеет заметные задержки в Desire или Galaxy Nexus, а реализация ListView медленна на Desire HD.
Каков наилучший способ реализации такого списка? Не могли бы вы предложить мне некоторые рекомендации о том, как сделать реализацию быстрой и независимой от устройства? Я считаю, что около 20 изображений и кнопок в списке не должны быть проблемой для этих телефонов.
Какой тип адаптера вы используете с ListView? – ChristopheCVB
Я наследую пользовательский адаптер от BaseAdapter. – hthms
Отредактирован исходный вопрос, чтобы включить GLSurfaceView – hthms