我有webView
內scrollView
(scrollView> mainView> webView和view2包含其他組件)。爲了只有一個滾動(scrollView之一),我計算webView完成加載時的高度,然後設置mainView的高度(其高度等於webView + view2高度)。我的應用程序支持縱向和橫向模式。要檢查當旋轉改變了我的使用方法:iOS的webView裏面scrollView:改變高度取決於設備的方向
- (void) willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
在這個函數中我打電話,以重置我webView
(設置html
內容)的內容的另一個一體,使
(void)webViewDidFinishLoad:(UIWebView *)webView.
能回顧:
- (void)webViewDidFinishLoad:(UIWebView *)webView {
//set the main view height
[self.loader stopAnimating];
CGSize contentSize = webView.scrollView.contentSize;
float scrollHeight = contentSize.height + 270;
NSLog(@"webViewDidFinishLoad scrollHeight %f", scrollHeight);
self.mainViewHeight.constant = scrollHeight;
}
我的問題:當應用程序是先在portrait
模式下,scrollView
高度是正確的,並且完美。之後,我將旋轉更改爲landscape
模式,高度也正確,但是當我將設備返回到portrait
時,即使將高度設置爲webViewDidFinishLoad
,scrollView
也會保持landscape
模式的高度。當我把一個斷點self.mainViewHeight.constant = scrollHeight;
我發現,當我從風景到人像模式
檢查支持的設備取向的
contentSize
高度不改變,也許你不支持例如顛倒,但旋轉到它,並等待 – gaRik@gaRik,但我沒有與其他屏幕(在同一設備上的相同應用程序)這個問題 –