一、elayoutSubViews 在以下情况下会被调用:
1、init初始化不对调用layoutSubviews
2、addSubview会调用
3、设置view 的frame 时会调用
4、滚动UIScrollView时会调用
5、旋转屏幕会调用父视图的layoutSubViews
6、直接手动调用layoutSubViews
layoutSubViews 在数据发生变化时调用,可以让子视图重新绘制,相当于刷新界面。
二、drawrect 在以下情况下会被调用:
1、如果在UIView初始化没有设置rect大小时,不会自动调用drawrect方法。drawrect是在controller->loadview 和 controller -> viewdidload 之后被调用
2、在sizeToFit 之后调用
3、通过设置contentmode 的 UIViewContentModeRedraw。将在每次设置或者更改frame的时候自动调用
4、手动调用setNeedsDisplay 方法
三、CGPoint position :
用来设置CALayer在父层中的位置
以父层的左上角为原点(0, 0)
CGPoint anchorPoint:
称为“定位点”、“锚点”
决定着CALayer身上的哪个点会在position属性所指的位置
以自己的左上角为原点(0, 0)
它的x、y取值范围都是0~1,默认值为(0.5, 0.5)
默认的anchorPoint(锚点)位置是(0.5,0.5) 即中心点。