美文网首页
UIViewController xib frame生效时机

UIViewController xib frame生效时机

作者: Onepiece_xsl | 来源:发表于2016-09-20 20:00 被阅读733次

    需求:UIViewController vcA 从xib上加载。vcA的视图上有几个子view其上面的子view布局一致。在上面一个个托太麻烦,新建了一个继承于UIView的类CustomerView,在上面用代码码视图。但是在vcA.view的约束未生效前,customerView的frame是不准确的。所以要在约束生效之后,layout subview.

    解决方法:

    在- layoutSubviews;里面设置frame就ok了。

    补充:

    - viewDidLayoutSubviews;这个方法调用的时候,self.view的frame已经计算好了。

    UIViewController 从xib加载出来,ViewDidLoad里面frame不准确。

    视图的加载顺序是,先计算好父视图frame,再layout subview,再layout subView的subView。当父视图约束发生改变时,又会重新执行以上步骤。

    相关文章

      网友评论

          本文标题:UIViewController xib frame生效时机

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