UIButton - сохранить текст черным при прикосновении - PullRequest
6 голосов
/ 10 сентября 2011

У меня есть iPhone UIButton (Custom), в котором есть фоновое изображение и текст.

При прикосновении изображение темнеет (Good), но текст меняется с черного на белый.

Как сохранить текст таким же черным, чтобы при прикосновении к кнопке изменял цвет только изображение.

Ответы [ 3 ]

12 голосов
/ 10 сентября 2011

В большинстве случаев будет работать следующая строка:

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

Если ничего не происходит, используйте либо следующее:

[button setTitleColor:[UIColor blackColor] forState:(UIControlStateSelected | UIControlStateHighlighted | UIControlStateNormal)];

Или это поможет:

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

См. Комментарии ниже по причинам, по которым этот ответ был отредактирован / расширен для включения двух отдельных строк.

5 голосов
/ 10 сентября 2011

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

0 голосов
/ 28 октября 2013
okButton.titleLabel.textColor = [UIColor redColor];
[okButton addTarget:self action:@selector(isPressingForgetButton:) forControlEvents:UIControlEventTouchDown];
[okButton addTarget:self action:@selector(didPressForgetButton:) forControlEvents:UIControlEventTouchUpInside];


- (void) isPressingForgetButton:(id)sender
{
    UIButton * bt = (UIButton *)sender;
    bt.titleLabel.textColor = [UIColor greenColor];
}
- (void) didPressForgetButton:(id)sender
{
    UIButton * bt = (UIButton *)sender;
    bt.titleLabel.textColor = [UIColor redColor];
    [self gotoUnblockView];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...