use*_*ser 4 xcode svg objective-c ios
我想更改 svg 图像的颜色。我正在使用以下代码,它隐藏图像并使用颜色集填充整个图像视图。
self.badmintonImgView.tintColor = [UIColor orangeColor];
Run Code Online (Sandbox Code Playgroud)
我需要更改图像的颜色。请建议
迅速
要使用 Swift 更改 SVG 的颜色:
badmintonImgView.image = badmintonImgView.image?.withRenderingMode(.alwaysTemplate)
badmintonImgView.tintColor = UIColor.orange
Run Code Online (Sandbox Code Playgroud)
执行以下操作可能适合您。
SVGKImage *svgImage = [SVGKImage imageNamed:@"YOURIMAGENAME"];
SVGKLayeredImageView *svgImageView = [[SVGKLayeredImageView alloc] initWithSVGKImage:svgImage];
[capturedImageView addSubview:svgImageView];
CALayer* layer = svgImageView.layer;
for (CALayer *subLayer in layer.sublayers) {
for (CALayer *subSubLayer in subLayer.sublayers) {
for (CALayer *subSubSubLayer in subSubLayer.sublayers) {
if( [subSubSubLayer isKindOfClass:[CAShapeLayer class]]){
CAShapeLayer* shapeLayer = (CAShapeLayer*)subSubSubLayer;
shapeLayer.fillColor = [UIColor BlackColor].CGColor;
}
}
}
}
Run Code Online (Sandbox Code Playgroud)