Layer只是负责内容的显示,view还负责响应事件。
关于创建Layer和获取Layer:
func testLayerProperty() {
var myLayer = CALayer()
// self.view.layer 获取layer
// 同时layer同样可以像view一样增加在别的view之上
self.view.layer.addSublayer(myLayer)
}
fullsizerender.jpg
而当我们需要设置layer的backgroundColor的时候:
myLayer.backgroundColor = UIColor.magentaColor()
这样是会报错的,看上图,当我们使用core animation 的时候,依靠的是Core Graphics. 需要使用CGColor:
myLayer.backgroundColor = UIColor.magentaColor().CGColor
// myLayer 同样需要设置 frame
myLayer.frame = CGRectMake(x, y, width, height)
关于layer的属性有backgroundColor/Border(边界宽度,边界颜色),Corner Radius(边角半径,可以使边角更圆润),Shadow(透明度shadowOpacity, shadowOffset).还有许多的属性
myLayer.shadowOffset = CGSizeMake(5, 5)
网友评论