Изменение размера фрейма UIWebView не меняет размер внутреннего содержимого - PullRequest
6 голосов
/ 17 декабря 2009

если я изменяю фрейм UIWebView (свойство scalePageToFit имеет значение YES), что мне нужно сделать, чтобы уровень масштабирования отображаемой в данный момент веб-страницы сохранялся?

Допустим, у меня есть фрейм UIWebView шириной 200 пикселей, и он увеличен до размера веб-сайта, так что виден только один столбец. После изменения ширины на 300 я все еще вижу столбец с тем же размером и дополнительным пространством слева и справа. Но что мне нужно, так это то, что я все еще вижу только этот столбец, но больше.

Есть идеи, что мне нужно сделать, чтобы добиться этого? Я много чего перепробовал, но пока ничего не получалось.

Кстати, iPhone, встроенный в браузер Safari, делает то же самое (с тем же веб-сайтом, поэтому он не связан с контентом) при повороте iPhone ... Я вижу тот же контент, ошибка больше, НЕ больше контента, как это происходит с моей текущей версией кода.

Спасибо за помощь! Markus

Ответы [ 2 ]

1 голос
/ 11 февраля 2012

РЕДАКТИРОВАТЬ : Лучший ответ:

mjdth правильно, вы можете использовать свойство contentMode в UIWebView. Очень просто:

webView.contentMode = UIViewContentModeRedraw; 

Старый, дерьмовый ответ:

Это сработало для меня, но я работал с локальными страницами и небольшим количеством контента:

-(void)layoutSubviews
{
    // Cause web view to reload content in order to display at new frame size
    [webView reload];
}

Хотелось бы увидеть лучшее решение, которое не требует перезагрузки страницы!

0 голосов
/ 18 декабря 2009

Что вы установили для UIViewContentMode веб-представления (также может быть установлено в IB в разделе «Режим» раздела «Просмотр»)? Так как вы изменяете размер представления, это может быть как-то связано с этим. Просто выстрел в темноте, так как я не пробовал, но, надеюсь, это поможет.

Вы также можете попробовать отключить scalePageToFit перед переходом и включить его снова после.

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