Как отобразить внешний HTML с возможностями прокрутки и масштабирования? - PullRequest
0 голосов
/ 17 июня 2011

Я боролся с этой проблемой уже несколько дней. Я внедряю приложение для Android и iOS, используя Sencha Touch. Я хочу иметь возможность щелкнуть ссылку (элемент списка), которая может указывать на HTML или изображение или, возможно, даже PDF-документы (для iOS). Этот файл может быть локальным или другим доменом.

Пока я нашел два разных подхода, но ни один из них не работал идеально. Одним из подходов является изменение «window.location» и переход на html-страницу, содержащую фрейм с кнопкой «Назад» и другой фрейм с файлом, который я хочу отобразить. Прокрутка и масштабирование работают хорошо, но когда пользователь хочет вернуться назад, все приложение должно быть перезагружено (все файлы javascript и т. Д.).

Другой подход заключается в получении нужного файла с помощью ajax-запроса и добавлении текста ответа внутри панели. Проблема в том, что масштабирование не работает. Я пытался прослушать пинч-событие и затем масштабировать панель, но затем прокрутка перестала работать ...

Таким образом, вопрос заключается в следующем: как отобразить внешнее содержимое, такое как страницы HTML и изображения, но при этом сохранить возможности прокрутки и масштабирования и позволить пользователю вернуться без перезагрузки всего приложения?

Я благодарен за всю информацию, которую могу получить! / Christian

Ответы [ 2 ]

0 голосов
/ 20 июня 2011

Добавьте в свои приложения следующий метод onCreate ():

WebSettings settings = this.appView.getSettings();
settings.setSupportZoom(true);
settings.setBuiltInZoomControls(true);

Это не будет работать, если ваше ПЗУ не поддерживает мультитач, но так как оно уже работает в вашем браузере, оно должно это сделать.

0 голосов
/ 17 июня 2011

Если вы используете PhoneGap, вы можете попробовать подключаемый модуль ChildBrowser: https://github.com/phonegap/phonegap-plugins/tree/master/iPhone/ChildBrowser

Для чистого мобильного веб-приложения используйте манифест кэша HTML5, чтобы избежать перезагрузки при перемещении между фреймами и страницами: http://diveintohtml5.ep.io/offline.html

...