Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 为什么我的UIWebView框架没有正确调整大小?_Ios_Xcode_Ios7_Uiwebview_Xcode6 - Fatal编程技术网

Ios 为什么我的UIWebView框架没有正确调整大小?

Ios 为什么我的UIWebView框架没有正确调整大小?,ios,xcode,ios7,uiwebview,xcode6,Ios,Xcode,Ios7,Uiwebview,Xcode6,我用XIB做了完全相同的事情,它工作正常,但我的故事板版本有问题 这是我的UIWebView委托代码 #pragma mark - UIWebViewDelegate Protocol Methods - (void)webViewDidFinishLoad:(UIWebView *)webView { CGRect frame = webView.frame; frame.size.height = webView.scrollView.contentSize.height;

我用XIB做了完全相同的事情,它工作正常,但我的故事板版本有问题

这是我的UIWebView委托代码

#pragma mark - UIWebViewDelegate Protocol Methods
- (void)webViewDidFinishLoad:(UIWebView *)webView {

    CGRect frame = webView.frame;
    frame.size.height = webView.scrollView.contentSize.height;
    _webView.frame = frame;

    NSLog(@"Webview Frame height is %f", _webView.frame.size.height);

    _scrollView.contentSize = CGSizeMake(self.scrollView.frame.size.width, _headerImageView.frame.size.height + webView.frame.size.height);

    NSLog(@"scrollview content height is %f", _scrollView.contentSize.height);

}
NSLog显示了大约800点的webview框架高度。Scrollview内容大小完美,大约1000点

我的Scrollview设置为红色背景。所以你可以在这里看到webview框架在屏幕上只有大约500个点,其余的内容都被切断了

有什么想法吗?谢谢


问题在于,自动布局负责web视图的框架和滚动视图的内容大小。你可以设置它们,当然,如果你阅读它们,你就可以阅读你刚刚设置的内容;但你只是在误导自己,因为(在你的方法之外)自动布局出现并将它们设置为真实的,而你看到的(与无意义的NSLog读数相反)是自动布局设置的结果。您需要正确配置约束,以便“自动布局”能够完成您希望它完成的任务


.xib文件中未启用自动布局,因此您没有遇到此行为。但它已在您的故事板中打开。

非常感谢您的解释。但您知道在处理UIWebView的可变内容大小时如何正确设置约束吗?这不需要在delegate didfinishload中确定吗?我不清楚您想做什么。web视图有一个内部滚动视图,它将设置滚动视图的内容大小,以便用户可以查看整个网页。你什么都不用做。现在,您还获得了另一个滚动视图;我不知道为什么(滚动视图内的网页视图内的滚动视图??)。无论如何,您可以设置外部滚动视图的
contentSize
,但必须在其内部约束的情况下进行设置,或者必须关闭滚动视图内部的自动布局,正如我在这里解释的那样:我有一个带有webview的scollview,其中有其他视图,我想一起滚动。我已经禁用了作为webview一部分的scrollview。我会读你的链接!嘿,Matt,我如何向固定到scrollview superview的contentsize的UIWebView添加高度约束?有关我如何解决此问题的详细信息,请参见: