Код ниже делает все, что я хочу (изменение названия и цвета editButton от обычного цвета «Редактировать» до красного «Отмена» и обратно при нажатии , за исключением, что когда editButton отображает красный «Отмена», и я нажимаю кнопку sendButton, Я хотел бы editButton, чтобы отобразить нормальный цвет «Edit» снова.Как изменить заголовок/цвет UIButton, не нажимая кнопку в iOS?
Я делаю что-то неправильно, или есть что-то еще мне нужно сделать?
Спасибо,
Джон
- (IBAction)sendClicked:(id)sender {
if (dontCheck) {
dontCheck = NO;
[editButton setTitle:@"Edit" forState:UIControlStateNormal];
[editButton setTitleColor:[[sendButton titleLabel] textColor] forState:UIControlStateNormal];
}
// ...
}
- (IBAction)editClicked:(id)sender {
if (dontCheck) {
dontCheck = NO;
dataLoaded = NO;
[sender setTitle:@"Edit" forState:UIControlStateNormal];
[sender setTitleColor:[[submitButton titleLabel] textColor] forState:UIControlStateNormal];
} else {
dontCheck = YES;
[sender setTitle:@"Cancel" forState:UIControlStateNormal];
[sender setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
}
// ...
}
Это не работает для меня: (я сделал необходимые изменения в файле XIb.)
- (IBAction)sendClicked:(id)sender {
if (dontCheck) {
dontCheck = NO;
[editButton setTitle:@"Edit" forState:UIControlStateNormal];
[editButton setTitleColor:[[submitButton titleLabel] textColor] forState:UIControlStateNormal];
[editButton setSelected:NO];
}
// ...
}
- (IBAction)editClicked:(id)sender {
if (dontCheck) {
dontCheck = NO;
dataLoaded = NO;
[sender setTitle:@"Edit" forState:UIControlStateNormal];
[sender setTitleColor:[[submitButton titleLabel] textColor] forState:UIControlStateNormal];
[editButton setSelected:NO`];
} else {
dontCheck = YES;
[sender setTitle:@"Cancel" forState:UIControlStateSelected];
[sender setTitleColor:[UIColor redColor] forState:UIControlStateSelected];
[editButton setSelected:YES];
}
// ...
}
Если мои ответил помог вам, это обычная любезность на SO, чтобы отметить ответ, как принято, чтобы будущие читатели знали, что ответ полезен. – FelixLam
Извините, я не знал. –
Вот что я подумал. Вы увидите, что с большей вероятностью получите ответы, если помечаете ответы соответственно, пока процент отображается вместе с вашим значком. – FelixLam