setNeedsLayout与layoutIfNeeded

来源:互联网 发布:壁纸桌面软件 编辑:程序博客网 时间:2024/06/05 20:51
三种方法都用于刷新子对象布局,解释分别如下:

-layoutSubviews方法:这个方法,默认没有做任何事情,需要子类进行重写

-setNeedsLayout方法: 标记为需要重新布局,异步调用layoutIfNeeded刷新布局,不立即刷新,但layoutSubviews一定会被调用

-layoutIfNeeded方法:如果,有需要刷新的标记,立即调用layoutSubviews进行布局(如果没有标记,不会调用layoutSubviews)

相互之间的关系,setNeedsLayout只进行标记,layoutIfNeeded判断是否有刷新标记。如果有标记就会调用layoutSubviews布局。



0 0
原创粉丝点击