• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

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

[复制链接]
菜鸟教程小白 发表于 2022-12-12 12:30:58 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

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

这是我的 UIWebView 委托(delegate)代码

#pragma mark - UIWebViewDelegate Protocol Methods
- (void)webViewDidFinishLoadUIWebView *)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 显示正确的 webview 框架高度约为 800 点。 Scrollview 内容大小完美,大约 1000 点。

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

有什么想法吗?谢谢!

enter image description here



Best Answer-推荐答案


问题在于自动布局同时负责 web View 的框架和 ScrollView 的内容大小。你可以设置它们,当然,如果你再读它们,你就读到了你刚刚设置的东西;但是您只是在误导自己,因为随后(在您的方法之外)出现了自动布局并将它们设置为真实,而您看到的内容(与您毫无意义的 NSLog 读数相反)是自动布局的设置。您需要正确配置约束,以便自动布局执行您想要的操作。

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

关于ios - 为什么我的 UIWebView 框架没有正确调整大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26691103/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap