【发布时间】:2014-09-19 16:07:56
【问题描述】:
我是 iOS 编程的新手,我试图在故事板中查看顶部的 UIImageView 和下方的 uiWebView。我设置了一个包含它们的UIScrollView,我希望滚动使图像在下降时消失。
我遵循这个答案 (link) 并且我得到了滚动工作,但 UIWebView 没有正确调整自身大小。我已经尝试了很多解决方案,但是如果我让 web 视图调整大小,我就不再滚动工作,反之亦然。
特别是,我正在使用:
- (void)viewDidLayoutSubviews
{
[super viewDidLayoutSubviews];
_textDetailNews.delegate = self; // the web view delegate
_textDetailNews.scrollView.scrollEnabled = NO;
[_textDetailNews loadHTMLString:description baseURL:nil]; // set text to be shown in web view
}
和
- (void)webViewDidFinishLoad:(UIWebView *)webview
{
CGFloat height = [[_textDetailNews stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight"] floatValue];
[_scrollView setContentSize: CGSizeMake(_scrollView.frame.size.width, height + _scrollView.frame.size.height)];
CGRect oldBounds = [[self textDetailNews] frame];
[_textDetailNews setFrame:CGRectMake(oldBounds.origin.x, oldBounds.origin.y, oldBounds.size.width, height)];
}
其中_scrollView 已经包含来自故事板的UIImageView 和UIWebView 集。
感谢您对滚动和UIWebView 高度调整工作的帮助。
编辑
我试图让它更清楚。 UIScrollView 可以很好地与上述代码配合使用,但 UIWebView 不会更改其框架。虽然如果我不打电话:setContentSize _srollView UIWebView 更改大小但视图不再滚动。
谁能告诉我问题出在哪里?
【问题讨论】:
标签: ios objective-c uiwebview uiscrollview