美文网首页
viewdidlayoutsubviews 何时调用 和navi

viewdidlayoutsubviews 何时调用 和navi

作者: __May__ | 来源:发表于2019-02-28 17:22 被阅读0次

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

 1、init初始化不会触发layoutSubviews 

2、addSubview会触发layoutSubviews 

3、设置view的Frame会触发layoutSubviews,当然前提是frame的值设置前后发生了变化

工作中遇到一个问题 是关于UINavigationBar  的subviews的问题。我是在viewdidlayoutsubviews 方法里去做了改变我在navBar上自定义的一个view的透明度等于navbar.subviews.firstObject的透明度。

这时候 我发现有些页面改变了,有些页面没改变。

测试打印出  navbar.subviews  在viewDidLoad,viewWillAppper 和 viewdidlayoutsubviews第一次调用的时候都为空  也就是说在viewDidApper之前 navbar.subviews 都是空的。如果某些页面 在viewDidApper及之后 再次触发调用viewdidlayoutsubviews则就可以正确显示。

所以在做某些判断的时候一定要注意 navigationBar.subviews是否为空

相关文章

网友评论

      本文标题:viewdidlayoutsubviews 何时调用 和navi

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