2012-04-03 130 views
0

我试图解决我的第一个iPhone应用程序,我遇到了一个我只是不知道的东西。我在视图上有很多按钮,当您单击它们时,它们的文本颜色会从黑色变为蓝色。我认为我可以通过设置textColor属性来解决这个问题,每当按钮被设置回黑色时,但我觉得还有其他事情正在进行。iPhone按钮文本颜色在点击时自身发生变化?

任何人都知道我的按钮为什么会自己改变颜色?

+0

这很奇怪......你在做什么特别的按钮? – Greg 2012-04-03 00:36:22

回答

3

根据按钮状态,可能会有不同的标题颜色。使用以下UIButton类的方法设置它们:

- (void)setTitleColor:(UIColor *)color forState:(UIControlState)state 

F.e.

[button setTitleColor:[UIColor blackColor] forState:UIControlStateNormal]; 
[button setTitleColor:[UIColor blackColor] forState:UIControlStateHighlighted]; 

其中UIControlStateNormal是默认的,没有被按下,按钮状态,并且forState:UIControlStateHighlighted表示按压状态。但是还有更多,并且可以与二进制和相结合,例如(UIControlStateHighlighted | UIControlStateSelected)。

+0

事实证明,我已经将属性设置为button.titleLabel.textColor,并且这不起作用。我不知道为什么。当我切换到使用setter方法时,它工作正常 – bkbeachlabs 2012-04-03 03:31:20