Sencha Touch/ExtJS: мозаичный вид прокрутки (например, CATiledLayer)

Я ищу что-то вроде CATiledLayer (на iOS), но для использования в PhoneGap/Sencha Touch 2.

Идея состоит в том, чтобы «поточить» очень большое изображение с сервера в виде фрагментов — очень похоже на то, как Google Maps делает эту работу.

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

К сожалению, я не смог найти что-то, поэтому несколько указателей высоко ценятся.


Обновлять:

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

Я также нашел GSV (Big Ass Image Viewer) - к сожалению, я не поддерживаю сенсорные жесты и вообще вроде заброшен.

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


person BastiBen    schedule 23.04.2012    source источник


Ответы (1)


Я никогда не видел ничего подобного, сделанного с помощью Sencha Touch 2, хотя я собираюсь предположить, что сборка чего-то подобного не потребует многого.

В основном это будет ваш пользовательский компонент (который будет прокручиваться). Внутри этого компонента вы должны вставить 1 дочерний элемент, размер которого будет соответствовать размеру вашего изображения (скажем, 15000 x 15000 пикселей), чтобы он переполнялся. Затем вы должны прослушать событие прокрутки в родительском контейнере и, когда оно достигнет определенного состояния x/y, обновить дочерний элемент с помощью этого раздела изображения.

Я не уверен, каким будет лучшее решение для детского HTML. Возможно, куча div, но я думаю, что <canvas> лучше всего подходит для изображений.

person rdougan    schedule 23.04.2012