菜鸟教程小白 发表于 2022-12-12 12:30:58

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


                                            <p><p>我用 XIB 做了同样的事情,它可以工作,但是我的 Storyboard版本有问题。</p>

<p>这是我的 UIWebView 委托(delegate)代码</p>

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

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

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

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

    NSLog(@&#34;scrollview content height is %f&#34;, _scrollView.contentSize.height);

}
</code></pre>

<p>NSLog 显示正确的 webview 框架高度约为 800 点。 Scrollview 内容大小完美,大约 1000 点。</p>

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

<p>有什么想法吗?谢谢!</p>

<p> <img src="/image/EKPcW.png" alt="enter image description here"/> </p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>问题在于自动布局同时负责 webView 的框架和 ScrollView 的内容大小。你可以设置它们,当然,如果你再读它们,你就读到了你刚刚设置的东西;但是您只是在误导自己,因为随后(在您的方法之外)出现了自动布局并将它们设置为真实,而您<em>看到</em>的内容(与您毫无意义的 NSLog 读数相反)是自动布局的设置。您需要正确配置约束,以便自动布局执行您想要的操作。</p>

<p> .xib 文件中未启用自动布局,因此您没有遇到此行为。但它已在您的 Storyboard中打开。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 为什么我的 UIWebView 框架没有正确调整大小?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/26691103/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/26691103/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 为什么我的 UIWebView 框架没有正确调整大小?