iOS - drawrect 和 loyoutSubViews & archorPoint
Posted qzcodediary
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS - drawrect 和 loyoutSubViews & archorPoint相关的知识,希望对你有一定的参考价值。
一、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) 即中心点。
以上是关于iOS - drawrect 和 loyoutSubViews & archorPoint的主要内容,如果未能解决你的问题,请参考以下文章
在 iOS 和 iPhone 上,如何绘制位图并在 drawRect 中显示?
iOS的layoutSubviews和drawRect方法何时调用
iOS - drawrect 和 loyoutSubViews & archorPoint
通过使用 UIGraphicsBeginImageContext 和 drawRect 在 ios 中拼贴 imageView 来计算图像大小和位置