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

ios - 为什么 UIView 比 Screen 宽

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

我已经使用界面生成器创建了一个 View Controller ,同时打开了大小类。

View 对其 super View (即 View Controller 的 View )具有前导和尾随约束。像这样的。

|-(14)-( View )-(14)-|

当我运行应用程序时,它看起来很棒, View 的两边都有 14pt 的插图,但当我打印它的宽度时,我得到 576,它比屏幕宽度更宽。在界面生成器中, View 的框架宽度设置为 576(作为打开大小类时的 Canvas 大小),但我猜在运行时约束应该覆盖它。

为什么 View 看起来正确,但它的框架显示更大的宽度??



Best Answer-推荐答案


您何时打印宽度?我猜在 ViewDidLoad 中。因为您使用 Interface Builder 并启用了大小类,所以默认情况下,宽度和高度为 600x600。在 View 加载时,尺寸仍然引用界面生成器的尺寸,直到 View 出现,它将根据屏幕尺寸自动缩放。这就是为什么你的 UIView 比屏幕宽的原因。

这是我从使用 Interface builder 构建的 View Controller 中打印出来的,并启用了大小类。在 iPhone 6S plus 上运行

[Size] at view 确实加载了 {{0, 0}, {600, 600}}

[Size] at view 确实出现了 {{0, 64}, {414, 623}}

关于ios - 为什么 UIView 比 Screen 宽,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36886625/

回复

使用道具 举报

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

本版积分规则

关注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