Я новичок в разработке приложений для Android и в настоящее время экспериментирую с различными идеями пользовательского интерфейса. На изображении ниже вы можете видеть вертикально прокручиваемый список горизонтально прокручиваемых галерей (а также текстовые представления, как вы можете видеть). Я также делаю некоторые преобразования матрицы и камеры, к которым я вернусь через минуту.
Для фона элементов списка я использую зеленый. Синий - фон галерей, а красный - фон изображений. Это только для моей пользы обучения.
Используемые галереи являются расширенными классами, где я переопределил метод drawChild для выполнения операции масштабирования холста, чтобы изображение, расположенное ближе всего к центру (ширина), было больше, чем другие.
Представление списка происходит по вертикали, я переопределил метод drawChild и использовал вращение камеры из-за отсутствия измерения глубины в функциональности холста. Элементы в списке уменьшены и повернуты относительно их положения относительно центра (высоты).
Я понял, что прокрутка и щелчок не обязательно будут сопровождать преобразования изображения, но похоже, что рисунок родительского класса Gallery также ограничен исходными координатами (см. Фото ниже).
Мне бы очень хотелось услышать любую информацию о том, как я могу изменить координаты галерей в том, что отображается с помощью прокрутки галереи, и сенсорную реакцию этой галереи.
Изображения в галерее имеют разные размеры, поэтому не позволяйте себе смотреть на изображение ниже
Заранее спасибо!
Ben
ссылка на изображение (не удалось вставить)
- - Обновление:
Я использовал пользовательский интерфейс своего тестового приложения и заметил, что, когда я получил пользовательский интерфейс к точке связанного изображения, а затем коснулся верхней части следующей строки в списке, галерея обновилась, чтобы отобразить правильное представление. Итак, я добавил вызов clearFocus () в методе drawChild, и это привело к более точному рисованию. Это кажется немного медленнее, и, так как я на Невероятном, я боюсь, что это раздутое решение.
В любом случае, я по-прежнему буду признателен за ваши мысли о том, как лучше всего правильно отображать представления и как преобразовать сенсорные события в новой отображаемой области галереи в ее осязаемые координаты, чтобы прокрутка действительных изображений работала когда галерея переехала.
Спасибо!