UIScrollView中的UIWebView框架不会拉伸大小以适合所有内容

时间:2011-09-12 19:55:23

标签: iphone objective-c ios uiwebview uiscrollview

在从博客加载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 个答案:

答案 0 :(得分:1)

来自Apple的文档:

重要提示:您不应在UIScrollView对象中嵌入UIWebView或UITableView对象。如果这样做,可能会导致意外行为,因为两个对象的触摸事件可能会混淆和错误处理。

当你滚动时,事件可能会变得混乱。这可能是它阻止您将其余内容滚动到视图中的原因。