【问题标题】:iphone button text color changes by itself when clicked?点击时iphone按钮文本颜色会自行改变?
【发布时间】:2012-04-16 15:42:27
【问题描述】:

我正在尝试对我的第一个 iphone 应用程序进行故障排除,但我遇到了一个我不明白的问题。我在视图上有很多按钮,当您单击它们时,它们的文本颜色会从黑色变为蓝色。我假设我可以通过在每次按下按钮时设置 textColor 属性将其设置回黑色来解决此问题,但我觉得肯定还有其他事情发生。

有人知道为什么我的按钮会自己变色吗?

【问题讨论】:

  • 这很奇怪......你对按钮做了什么特别的事情吗?

标签: iphone objective-c ios button colors


【解决方案1】:

根据按钮状态,可以有不同的标题颜色。使用 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)。

【讨论】:

  • 原来我已将属性设置为 button.titleLabel.textColor,但这不起作用。我不知道为什么。当我将它切换为使用 setter 方法时,它工作正常
猜你喜欢
  • 1970-01-01
  • 2020-07-29
  • 2015-02-10
  • 1970-01-01
  • 1970-01-01
  • 2021-01-20
  • 1970-01-01
  • 2020-09-10
  • 1970-01-01
相关资源
最近更新 更多