【发布时间】:2017-01-26 14:46:06
【问题描述】:
在我的每个 xib 中,它都询问我要使用什么默认设备。我选择了 iPhone 6 并将框架更新为建议的框架。现在,在 viewWill 或 viewDidLayoutSubviews 中受到影响的任何视图都被搞砸了。他们都有CGRect(0, 0, 1000, 1000)的框架。
这是我的代码:
self.headImage.layer.cornerRadius = ceilf(CGRectGetWidth(self.headImage.frame)/2);
self.headImage.layer.masksToBounds = YES;
想知道这是怎么回事以及是否有解决方案。谢谢
【问题讨论】:
-
您能出示您的代码吗?
-
self.headImage.layer.cornerRadius = ceilf(CGRectGetWidth(self.headImage.frame)/2); ; self.headImage.layer.masksToBounds = YES; // 但是帧是错误的;它在 xib 中显示 CGRect(0, 0, 1000, 1000) 它的高度和宽度分别是 62 和 62;
-
xcode 8 更新后我遇到了完全相同的问题。 viewDidLayoutSubviews 上的第二个触发器给出了正确的帧。
-
我也面临与 Xcode 8.0 相同的问题
-
我通过在获取 myOwniew 框架之前调用 myOwniew.layoutIfNeeded() 解决了我的问题