加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ios – 故事板上的Xcode 9和9.1选定设备会影响部署设备上的视图

发布时间:2020-12-14 17:20:11 所属栏目:百科 来源:网络整理
导读:我注意到 Xcode 9有些奇怪.当我在我的主故事板上并且我更改所选设备以查看适当格式的视图控制器时,我注意到我在viewDidLoad上的tableview的宽度是错误的,如果故事板上选定的设备与我部署的设备不同.我已经完成了测试,似乎在故事板上选择了所选设备的布局. 有
我注意到 Xcode 9有些奇怪.当我在我的主故事板上并且我更改所选设备以查看适当格式的视图控制器时,我注意到我在viewDidLoad上的tableview的宽度是错误的,如果故事板上选定的设备与我部署的设备不同.我已经完成了测试,似乎在故事板上选择了所选设备的布局.

有没有人已经遇到过这个问题?

此问题也出现在Xcode的beta版本9.1中

解决方法

当我尝试将遮罩应用到视图的图层以便在UITableViewCell内圆角时,我注意到了同样的问题. This answer为我做了诀窍.

在layoutSubviews()中,在运行时需要真实大小的任何视图上调用layoutIfNeeded().对于我的用法,它看起来像这样:

override func layoutSubviews() {
    super.layoutSubviews()

    print("cardView frame: (cardView.frame)") // Storyboard size
    cardView.layoutIfNeeded()
    print("cardView frame: (cardView.frame)") // Runtime device size
    // Perform your layout here. 
}

我希望这有帮助!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读