Цвет текста кнопки iphone изменяется сам по себе при нажатии? - PullRequest
0 голосов
/ 03 апреля 2012

Я пытаюсь устранить неполадки с моим первым приложением для iphone, и я столкнулся с проблемой, которую я просто не понимаю.У меня много кнопок на виде, и когда вы нажимаете на них, цвет их текста меняется с черного на синий.Я предполагаю, что я мог бы это исправить, просто устанавливая свойство textColor каждый раз, когда нажимали кнопку, чтобы установить его обратно в черный цвет, но я чувствую, что должно происходить что-то еще.

Кто-нибудь знает, почему мои кнопки сами меняют цвет?

1 Ответ

3 голосов
/ 03 апреля 2012

Возможно иметь разные цвета заголовка в зависимости от состояния кнопки. Установите их, используя следующий метод класса 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).

...