美文网首页
关于layoutSubviews

关于layoutSubviews

作者: NateLam | 来源:发表于2017-02-13 11:24 被阅读27次

    这个是个小问题, 但是没注意好有时候能烦你一阵子, 在那闷头调试半天却各种诡异.
    首先要注意这个方法被调用的时机

    layoutSubviews在以下情况下会被调用:

    1. init初始化不会触发layoutSubviews
    2. addSubview会触发layoutSubviews
    3. 设置view的Frame会触发layoutSubviews,当然前提是frame的值设置前后发生了变化
    4. 滚动一个UIScrollView会触发layoutSubviews
    5. 旋转Screen会触发父UIView上的layoutSubviews事件
    6. 改变一个UIView大小的时候也会触发父UIView上的layoutSubviews事件

    当我们想偷懒, 使用cell自带的label和imageView时, 它们是只读属性, 不能被创建, 需要在初始化改变它们的颜色字体大小等属性, 然后在layoutSubviews里面去设定他们的尺寸.

    但是有一个很神奇的事情, 平时写[super layoutsubviews]没啥事, 也应该写, 但是设定自带控件时如果写了, 就会发生各种诡异的事情, 要不就是直接崩溃, 要不就是布局产生混乱, 不写就没事, 这事我还在研究, 如果有答案欢迎留言指教

    这次不是借鉴或致敬了, 这问题是我自己发现的, 发现这位作者也注意到了这点, 算是作为我的辅证http://blog.csdn.net/quanqinyang/article/details/22827815

    相关文章

      网友评论

          本文标题:关于layoutSubviews

          本文链接:https://www.haomeiwen.com/subject/xkizittx.html