我有自己的子类UIButton
。我添加UIImageView
它并添加图像。我想用淡淡的颜色在图像上绘制它,但是它不起作用。
到目前为止,我有:
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
self.backgroundColor = [UIColor clearColor];
self.clipsToBounds = YES;
self.circleView = [[UIView alloc]init];
self.circleView.backgroundColor = [UIColor whiteColor];
self.circleView.layer.borderColor = [[Color getGraySeparatorColor]CGColor];
self.circleView.layer.borderWidth = 1;
self.circleView.userInteractionEnabled = NO;
self.circleView.translatesAutoresizingMaskIntoConstraints = NO;
[self addSubview:self.circleView];
self.iconView = [[UIImageView alloc]init];
[self.iconView setContentMode:UIViewContentModeScaleAspectFit];
UIImage * image = [UIImage imageNamed:@"more"];
[image imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
self.iconView.image = image;
self.iconView.translatesAutoresizingMaskIntoConstraints = NO;
[self.circleView addSubview:self.iconView];
...
和选择:
- (void) setSelected:(BOOL)selected
{
if (selected) {
[self.iconView setTintColor:[UIColor redColor]];
[self.circleView setTintColor:[UIColor redColor]];
}
else{
[self.iconView setTintColor:[UIColor blueColor]];
[self.circleView setTintColor:[UIColor blueColor]];
}
}
我做错什么了?(图像的颜色始终与原始颜色相同。)
在self.iconView = [UIImageView alloc]之后是什么意思?是的,我可以,但是不起作用。
—
Marko Zadravec 2014年
然后使用CGContext。也许您可以在这里找到答案stackoverflow.com/a/19275079/1790571
—
Himanshu Joshi 2014年
是的,我看到了这篇文章,但我真的不明白为什么我的代码不起作用。使用色调颜色是更干净的方法。
—
Marko Zadravec 2014年
setTintColor
在您创建的图标型控件?