我想在 UIButton 被触摸时用颜色填充它。该方法可以在action方法中实现
- (IBAction)bocClick:(UIButton *)sender {
[sender setBackgroundColor:[UIColor blackColor]];
}
我得到如下按钮
这个背景不足以满足我的需要,我需要有效果,比如..
您正在使用一个圆形rect
按钮,定制起来有点复杂。
您可以创建自定义类型按钮并使用背景图像,或者创建自定义类型按钮并圆角并colour
自己设置图层的背景。
或者您也可以使用以下方法:-
您可以像下面的示例一样添加 UIView 或 Lable:-
- (IBAction)bocClick:(UIButton *)sender {
UILabel *lbl2=[[UILabel alloc]initWithFrame:_btn.bounds];
lbl2.text=@"Button";
lbl2.textAlignment=UITextAlignmentCenter;
lbl2.font=[UIFont boldSystemFontOfSize:16];
lbl2.backgroundColor=[UIColor redColor];
lbl2.layer.cornerRadius = 5;
lbl2.layer.masksToBounds = YES;
[sender addSubview:lbl2];
}
输出是:-
类似的东西:-
您只需要设置tintColor
属性:
[sender setTintColor:[UIColor redColor]];
所以当 TouchUpInside 时你会得到高亮颜色。如果您还想更改背景颜色,那就更复杂了。然后你必须使用Quartz
只做这个
UIButton * bocClick = [UIButton buttonWithType:UIButtonTypeCustom];
请尝试将按钮类型更改为 UiButtonTypeCustom。请看下面的图片。 希望它会帮助你。