如何在里面设置UIButton的颜色(不是背景颜色)

Tor*_*ups 7 iphone background-color uibutton

我正在调整一些视觉变化,并注意到当我尝试设置UIButton的背景颜色时,它只将颜色设置在实际按钮之外(不在按钮本身内)

UIButton* button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
button.frame = CGRectMake(6, 9, 50, 25);    
[button setTitle:@"Select" forState:UIControlStateNormal];
button.backgroundColor = [UIColor redColor]; 
Run Code Online (Sandbox Code Playgroud)

是否存在允许我设置颜色的其他属性?

Jac*_*ngs 11

彩色UIButton

如果您不想使用图像,并希望它看起来与圆角矩形样式完全相同,请尝试此操作.只需在UIButton上放置UIView,使用相同的框架和自动调整大小的蒙版,将alpha设置为0.3,并将背景设置为颜色.然后使用下面的代码片段从彩色叠加视图中剪切圆角边缘.此外,取消选中UIView上IB中的"User Interaction Enabled"复选框,以允许触摸事件级联到下面的UIButton.

一个副作用是你的文字也会着色.

#import <QuartzCore/QuartzCore.h>

colorizeOverlayView.layer.cornerRadius = 10.0f;
colorizeOverlayView.layer.masksToBounds = YES;
Run Code Online (Sandbox Code Playgroud)


tux*_*x91 0

使用setImage:forState:

- (void)setImage:(UIImage *)image forState:(UIControlState)state
Run Code Online (Sandbox Code Playgroud)

另外,不要忘记创建按钮[UIButton buttonWithType:UIButtonTypeCustom]