寄宿图,图层中包含的图。使用contents属性添加图片。下面来研究在layer中设置图片。
首先需要一张图片,图片来自网络,是一张《海贼王》路飞的图片。本人最喜欢的动漫之一。
直接上代码:
1 | - (void)viewDidLoad { |
图片被压扁了,通过contentsGravity属性来让图片显示正常。
1 | self.layerView.layer.contentsGravity = kCAGravityResizeAspect; |
改为center,图片显示如下,看起来很模糊:
1 | self.layerView.layer.contentsGravity = kCAGravityCenter; |
设置contentScale:
1 | self.layerView.layer.contentsScale = UIScreen.mainScreen.scale; |
图片超出了视图的边界,设置下面的属性来解决这个问题。
1 | self.layerView.layer.masksToBounds = YES; |
接下来是contentsRect属性:
1 | self.layerView.layer.contentsRect = CGRectMake(0, 0, 0.5, 0.5); |
在app中可以考虑图片拼合的用法。
最后是有关contentsCenter的内容,类似.9图片。
可以在Interface Builder中通过Stretching直接设置该属性。
Custom Drawing
1 | - (void)viewDidLoad { |
使用CALayerDelegate绘制寄宿图时,超出边界的内容不进行绘制。