Android: Самый Легкий способ заставить веб-представление отобразить Битовый массив?

У меня есть некоторые изображения, которые я загрузил из удаленного источника, сохраненного в Растровых переменных, и я хочу отобразить их. В дополнение к переключению между этими изображениями пользователь должен также смочь масштабировать и панорамировать их. Моя первая идея состояла в том, чтобы так или иначе передать их через намерение к встроенному приложению галереи, но это, кажется, не возможно. Решение, которое предлагается в нескольких местах, использует веб-представление, так как оно уже поддерживает изменение масштаба и панорамирование. Мой вопрос состоит в том, как мои Растровые данные входят в веб-представление? Я должен записать это в файл сначала, который я должен был бы удалить снова позже или являюсь там более легким путем?

Или есть ли еще лучшие способы выполнить мою главную цель, которая отображает Растровые данные как zoomable и panable изображения?

7
задан Steven Meliopoulos 31 May 2010 в 01:47
поделиться

2 ответа

Я не был удовлетворен WebView в конце концов, поэтому я закончил созданием своей собственной Activity для просмотра изображений. Дальнейшее описание того, как я это сделал, можно найти в этом сообщении на google groups.

0
ответ дан 7 December 2019 в 14:29
поделиться

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

myWebView.getSettings().setBuiltInZoomControls(true); //to get zoom functionalities

String url = "http://....."; //url of your image

String x= "<html><head><meta name=\"viewport\" content=\"width=device-width, minimum-scale=1.0\"/><style type=\"text/css\">html, body {margin: 0;padding: 0;} img {border: none;}</style><head><body style=\"background: black;\"><table><tr><td align=\"center\"><img src=\"" + url + "\" /></td></tr></table></body></html>";

myWebView.loadData(x, "text/html", "UTF-8");

Что касается переключения изображений, вы можете просто изменить значение URL-адреса и снова вызвать loadData веб-просмотра.

4
ответ дан 7 December 2019 в 14:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: