我有一份新闻列表。通过单击其中一条消息,用户将被发送到详细视图。在详细视图中,用户可以水平滑动以阅读更多新闻。
我的UIPageViewController接收新闻列表和所点击的索引。
在详细视图中,我有一个UIImage,一个UILabel和一个UIWebView,都在UIScrollView中。
使用webViewDidFinishLoad方法计算UIScrollView和UIWebView的高度。
打开其中一条消息即可,但刷完两次后UIWebView高度停止正确计算。
- (void) webViewDidFinishLoad:(UIWebView *)newWebView {
CGRect frame = newWebView.frame;
frame.size.height = 1;
frame.size.width = width;
newWebView.frame = frame;
CGSize fittingSize = [newWebView sizeThatFits:CGSizeZero];
frame.size = fittingSize;
newWebView.frame = frame;
self.scrollView.contentSize = CGSizeMake(scrollView.frame.size.width, frame.size.height + y);
[newWebView setFrame:CGRectMake(x-8, y, width, frame.size.height)];
[newWebView setContentMode:UIViewContentModeScaleAspectFit];
[hud hide:YES];
}
此行返回10个高度(默认值)。
newWebView.frame = frame;
答案 0 :(得分:0)
将UIScrollView
创建者移至viewDidAppear
解决了它。