Текст в UIWebView изменяет размер или вес при повороте устройства - PullRequest
1 голос
/ 25 ноября 2011

У меня есть UIWebView, который в данный момент отображает очень простую строку HTML.В портретной ориентации это выглядит хорошо, но в альбомной ориентации текст меняется - шрифт выглядит тяжелее, а это не то, что мне нужно.См. Изображение ниже:

Image of font render problem

Верхняя строка - это то, что показано на портрете, а нижняя - на рисунке.Текст на китайском, но проблема та же с английским.

Вот мой код:

- (void)displayText
{
    [self.myWebView loadHTMLString:@"<html style=\"-webkit-text-size-adjust: none; font-size-adjust:none; \"><head><meta name=\"viewport\" content=\"width=device-width; initial scale=1.0; maximum-scale=1.0;\"></head><body style=\"background-color:#FFFFFF; font-size:28px; color:#DDDDDD;\">你好。你好。你好。你好。你好。你好。你好。你好。</body></html> " baseURL:[NSURL URLWithString:@""]];
}

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation
{
    [self.myWebView reload];
}

Есть идеи, что я делаю не так?

СПАСИБО!

1 Ответ

2 голосов
/ 26 ноября 2011

Этот CSS работает для меня:

-webkit-transform: translate3d(0,0,0);

Я нашел ответ здесь:

Шрифт UIWebView на портрете тоньше, чем пейзаж

ОБНОВЛЕНИЕ:

Одна проблема с вышеупомянутым CSS - это некоторая задержка перед отображением текста, если HTML перезагружается.Я обнаружил, что установка свойства UIWebView opaque в FALSE работает лучше:

self.myWebView.opaque = FALSE;

Это похоже на хак.Надеюсь, есть лучшее решение.

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