Android: изображение, отображаемое в Webview с URL с высоким качеством потери - PullRequest
6 голосов
/ 17 марта 2010

Я хочу отобразить изображение с URL-адреса в Webview на Android.

С телефонами Android версий 1.5 и 1.6 проблем нет. но тот же рис и тот же код на AndroidPhone с версией 2.0, и картинка полностью пикселирована.

Подобно тому, как Android сначала изменяет размер изображения до меньшего, а затем возвращает его к «нормальному» размеру.

К сожалению, важно показывать изображение без потери качества.

Я пытался интегрировать его в исходную папку, чтобы показать его как обычное изображение, но в Android 2.0 я получаю исключение, потому что изображение слишком большое. (На Android 1.6 проблем нет)

Любые идеи, как я могу отобразить изображение без потери качества с Android 2.0?

Ответы [ 4 ]

3 голосов
/ 27 марта 2010

Если вы еще этого не сделали, добавьте это в свой манифест:

 <supports-screens
      android:largeScreens="true"
      android:normalScreens="true"
      android:smallScreens="true"
      android:resizeable="true"
      android:anyDensity="true" />

Без этого все будет масштабировано.

Кроме того, если вы не хотите, чтобы ваше устройство / эмулятор масштабировало ваши рисунки, вы должны создать рисунки для каждой плотности, поместив версию с более высоким разрешением в папку hdpi

res/drawable-ldpi/my_icon.png       // icon image for low density
res/drawable-mdpi/dpi/my_icon.png   // icon for medium density
res/drawable-hdpi/my_icon.png       // icon image for high density
1 голос
/ 07 июня 2010

Используйте android:resizeable="true" вместо android:resizable="true". Отсутствует "e".

0 голосов
/ 29 марта 2011

Во всяком случае, я считаю, что это странное поведение элемента управления WebView. Есть небольшой обходной путь, который полезен в случае, когда вы предоставляете изображения через свой собственный сервер. Если изображение в формате PNG, вы можете установить глубину цвета до 8 бит. Хотя это приведет к снижению качества цвета, при увеличении изображение не будет размытым.

0 голосов
/ 18 января 2011

Давно эта тема здесь, но вот мои два цента:

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

На одном из моих телефонов я пользовался Wi-Fi, на другом я был подключен на грани через моего оператора.

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

Так что в моем случае это было связано не с версией фреймворка, как я думал, а с типом соединения, которое я использовал.

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