解决Xcode8中约束设置后,出现frame(0,0,1000,1000)的问题

最近在升级iOS10和Xcode8后出现了一个奇怪的问题,在所有使用autolayout的自定义视图中,在计算控件的frame时,总是出现控件的frame为(0,0,1000,1000)的情况。

问题如下:

无法计算出用户头像的宽度
头像的frame为{{0,0},{1000,1000}}

于是本人花了一些时间进行问题的查找,最后发现只要在需要对控件进行修改前,调用一下该空间的layoutIfNeeded()方法便可。

代码如下:

-(void)awakeFromNib{
    [super awakeFromNib];
    [self layoutIfNeeded];
    self.autoresizingMask = UIViewAutoresizingNone;
    //对用户头像的样式进行设置
    [self setupAuthorPhotoStyle];
}

问题解决:

已经成功获取了头像控件的frame
问题解决
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 因为要结局swift3.0中引用snapKit的问题,看到一篇介绍Xcode8,swift3变化的文章,觉得很详细...
    uniapp阅读 4,484评论 0 12
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,200评论 4 61
  • 钱钟书先生在《林纾的翻译》一书中用诙谐幽默的语言让我们重新审视了自己曾经和现在正在阅读的翻译作品。 在我们阅读过程...
    小焕熊阅读 1,859评论 6 5
  • 前段时间,看到有人说二十多岁还没谈过恋爱的是种病,叫做爱无能。 我特么的想爆粗口,何方神圣说的啊,没碰到合适的人,...
    小爽菇凉儿阅读 566评论 2 5
  • 我可能以后不能正常的生育了 因为我可能需要终身服药 我可能以后不能很快的结婚 因为我在服药期间不可以结婚 我的左耳...
    房程君宝宝阅读 186评论 0 0