Изображения с высоким разрешением в uiwebview - PullRequest
8 голосов
/ 06 сентября 2010

У меня есть веб-просмотр, который отображает изображение, как показано в коде ниже. В комплекте также есть DGT64@2x.png с размерами 128x128 для использования на iPhone4. DGT64@2x.png никогда не показывает. Есть ли способ отображать или / или в зависимости от того, iPhone это или iPhone4?

<img src="DGT64.png" width="64" height="64" align="left" style="padding:2px;"/>

Ответы [ 3 ]

14 голосов
/ 09 сентября 2010

Способ сделать это с помощью CSS-фонов.Просто вставьте все свои 2x вещи в подраздел CSS.Ключ также должен установить -webkit-background-size.Вот пример части css (как сетчатки, так и нет) для div с id Ampersand, который действует как изображение.

5 голосов
/ 06 сентября 2010

Я не думаю, что трюк @2x работает с веб-контентом.Звучит очень полезно, хотя, я бы, конечно, подал в Apple сообщение об ошибке.

Если вы генерируете вышеупомянутый HTML из своего приложения, то я думаю, что на данный момент лучшим способом будет определить, работаете ли вы наустройство отображения Retina с последующей настройкой имени изображения вручную.

Дисплей Retina можно обнаружить, выполнив что-то вроде этого:

if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {
    if ([[UIScreen mainScreen] scale] == 2) {
        // Use high resolution images
    }
}

(Взял этот код из ответа, найденного здесь вSO)

2 голосов
/ 06 сентября 2010

В настоящее время лучший способ сделать это - сослаться на изображения в файле CSS с помощью свойства background-image. Затем вы можете использовать специальный файл CSS, который загружается только устройствами с экранами высокого разрешения, чтобы переопределить эти свойства.

Подробнее см. в этом блоге .

...