UIScrollView 内的 UIWebView 框架不会拉伸大小以适应所有内容
Posted
技术标签:
【中文标题】UIScrollView 内的 UIWebView 框架不会拉伸大小以适应所有内容【英文标题】:Frame of UIWebView inside UIScrollView does not stretch size to fit all of contents 【发布时间】:2011-09-12 19:55:23 【问题描述】:在从博客加载 Web 内容的小型应用程序中,如果 UIWebView(它位于可滚动的 UIScrollView 内部)比实际 UIScrollView 的框架长,则不会将所有内容滚动到视图中。这是问题的图片:
http://i.imgur.com/G4G4C.png
加载 UIScrollView 和 UIWebView 的代码(这是 UIViewController 的一部分)
- (id)initWithhtml:(NSString*)html
self = [super init];
if (self)
CGRect appFrame = [[UIScreen mainScreen] applicationFrame];
UIScrollView* v = [[UIScrollView alloc] initWithFrame:appFrame];
self.view = v;
UIWebView* webView = [[UIWebView alloc] initWithFrame:v.frame];
webView.userInteractionEnabled = NO;
webView.backgroundColor = [UIColor whiteColor];
[self.view addSubview:webView];
[webView loadHTMLString:html baseURL:nil];
CGSize sz = v.bounds.size;
sz.height = webView.bounds.size.height + 20;
v.contentSize = sz;
[v release];
[webView release];
return self;
【问题讨论】:
【参考方案1】:来自 Apple 的文档:
重要提示:您不应在 UIScrollView 对象中嵌入 UIWebView 或 UITableView 对象。如果这样做,可能会导致意外行为,因为这两个对象的触摸事件可能会混淆和错误处理。
可能是当您滚动时,事件变得混乱。这可能是它阻止您将其余内容滚动到视图中的原因。
【讨论】:
谢谢,还在学习基础知识。你摇滚。该视图现在按预期工作。以上是关于UIScrollView 内的 UIWebView 框架不会拉伸大小以适应所有内容的主要内容,如果未能解决你的问题,请参考以下文章
UIWebView 在 UIScrollView 内消耗触摸事件
UIScrollView 中的 UIImageView 和 UIWebView
UIWebView 上的 UIScrollView 和 UITapGestureRecognizer 冲突