默认的文本是什么颜色的UIButton
?我正在尝试在某些表格视图单元格中重新创建它,但没有运气。我最接近的是:
[UIColor colorWithRed:0/255.0 green:51.0/255.0 blue:102.0/255.0 alpha:1];
该颜色、字体大小和样式是否记录在任何地方?
这是一个很老的问题,但我想我还是会添加自己的答案。
如果您需要在 iOS 7 及更高版本上具有相同颜色的自定义“纯文本”按钮,则不要使用 .UIButton()
而是使用UIButton.buttonWithType(UIButtonType.System)
.
这将为您提供与标准系统按钮具有相同属性的文本按钮,包括正确的颜色。然后,您可以将此按钮用作模板并更改字体大小或添加图像等内容。
尝试以下操作:
CGFloat red;
CGFloat green;
CGFloat blue;
CGFloat alpha;
UILabel *buttonLabel = [yourButton titleLabel];
UIColor *textColor = [buttonLabel textColor];
[textColor getRed:&red green:&green blue:&blue alpha:&alpha];
现在 red、green、blue 和 alpha 将包含您要查找的值:
NSLog(@"Red: %f Green:%f Blue:%f Alpha:%f", red, green, blue, alpha);
对于 iOS 6,这将返回:
Red:0.220000 Green:0.330000 Blue:0.530000 Alpha:1.000000
看起来有人以编程方式将其拉出,但我尚未确认。
就个人而言,我要做的是使用属性 currentTitleColor 捕获 viewDidLoad 中文本的颜色,然后在需要时使用它。这样您就不必担心 rgb 和其他问题。
所以在界面中为你的按钮设置一个 UIColor 属性和 Outlet
@property (strong,nonatomic)UIColor *backToTheDefaultTextColor;
@property (weak, nonatomic) IBOutlet UIButton *myButton;
在 viewDidLoad 中获取按钮标题颜色
_backToTheDefaultTextColor = _myButton.currentTitleColor;
然后,在您更改按钮标题的颜色并想要恢复后,只需输入
_myButton.titleLabel.textColor = _backToTheDefaultColor;