0

我像这样启动了我的按钮:

meetingPointButton = [UIButton buttonWithType:UIButtonTypeCustom];
[meetingPointButton setTitle:@"Alpha" forState:UIControlStateNormal];
[meetingPointButton setTitleColor:[UIColor lightGrayColor] forState:UIControlStateNormal];

之后我更改了它的标题,这样做时还想更改标题颜色。我正在使用以下代码:

[meetingPointButton setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
[meetingPointButton setTitle:@"Beta" forState:UIControlStateNormal];

标题更改为“Beta”,但其颜色仍为浅灰色。任何想法如何解决这个问题?

4

3 回答 3

2

正如王子所说,使用:

meetingPointButton.titleLabel.textColor = [UIColor blackColor];

省略forState:UIControlStateNormal会使按钮立即切换,而不是在下次收到时转到 UIControlStateNormal。知道这一点,您也可以将按钮设置为UIControlStateNormal原始代码之后。

于 2012-09-18T17:33:25.923 回答
1

试试这个:

 meetingPointButton.titleLabel.textColor = [UIColor blackColor];

更改文本颜色。

于 2012-09-18T16:43:27.667 回答
0

对于可能会根据标题来回答这个问题的人,当您更改标题颜色时可能看不到效果的一个原因是因为UIButton's 字符串可能是NSAttributedString. UIButton具有为标题设置属性字符串的特殊方法,当设置标题时,设置标题文本颜色无效。您需要更改属性标题NSAttributedString

于 2015-07-31T07:41:59.400 回答