首页 > 学院 > 开发设计 > 正文

iOS开发-在哪里更新customview的subviews的位置信息?(drawRect:还是layoutSubviews?)

2019-11-14 17:58:02
字体:
来源:转载
供稿:网友

对于custom,可以通过addSubview: 增加内容,也可以通过Core Graphic绘制内容。

对于后者,在drawRect: 进行,位置信息随之确定

对于前者,一般在view初始化时进行(也可以动态地在其它地方进行)。设置subview的位置信息时,需要了解下面的区别:

- 在 layoutSubviews中,此时custom view 的bounds虽然已经确定,但是对于有constraint的subview(比如在nib文件中添加的约束),其位置信息还没有按照constraint进行更新。

- 在drawRect:中,subview的位置已经根据constraint进行了更新。

也就是说custom调用layoutSubviews, 然后更新subview的位置信息,然后drawRect:


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表