sizeToFit UIWebView работает только один раз

В моем пользовательском UIViewController у меня есть два разных UIWebView, для которых мой пользовательский UIViewController является делегатом. В webViewDidFinishLoad:webView я вызываю [webView sizeToFit] и могу подтвердить, что он вызывается дважды, по одному для каждого UIWebView. Однако, к моему большому разочарованию, это, кажется, влияет только на первый вызов, в то время как другой остается неизменным. Очевидно, что оба их содержимого превышают границы, поэтому я ожидаю, что они будут соответствующим образом изменены.

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

EDIT: хорошо, очевидно, проблема в том, что представление, в которое я поместил второй UIWebView, не отображается на экране, когда я вызываю sizeToFit. Вызов его с задержкой после отображения представления приводит к ожидаемому поведению. Теперь я должен найти способ сделать это, не показывая это, потому что мне нужно, чтобы меня видели позже. Идеи?


person Morpheu5    schedule 03.06.2011    source источник
comment
Чтобы было ясно, вы пытаетесь изменить размер веб-представления до соответствующего размера на основе загруженного контента?   -  person TheBlack    schedule 04.06.2011
comment
Если бы это было наоборот, scalesPageToFit можно было бы установить перед загрузкой контента... Посмотрите, изменяется ли размер представления, когда для скрытого свойства UIView установлено значение YES. Таким образом, второе представление может быть добавлено к родительскому представлению вместе с первым представлением, но с setHidden:YES. Затем вместо добавления второго представления в качестве подпредставления просто установите для скрытого свойства значение NO.   -  person TheBlack    schedule 04.06.2011


Ответы (1)


Кажется, что сделать это на viewDidAppear работает как шарм.

person Morpheu5    schedule 21.06.2011