我试图改变CAShapeLayer的fillColor 它所包含的图层被触摸了。 我可以像这样更改点击图层的背景颜色:
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
CALayer *layer = [(CALayer *)self.view.layer.presentationLayer hitTest:point];
layer = layer.modelLayer;
layer.backgroundColor = [UIColor blueColor].CGColor;
}
这会改变" layer"的背景。蓝色如预期。 我的问题是如何更改内部"层"的CAShapelayer的颜色? 谢谢!
答案 0 :(得分:16)
CAShapeLayer
有一个属性fillColor
,您可以通过CGColor
传递更改:
CAShapeLayer* shapeLayer = (CAShapeLayer*)layer.modelLayer;
shapeLayer.fillColor = [UIColor blueColor].CGColor;