#ios4 #uibutton
#ios4 #uibutton
Вопрос:
Я создаю UIButtons во время выполнения и обрабатываю касание кнопки; Я хотел бы изменить цвет текста кнопки при нажатии кнопки и вернуться к исходному цвету при касании другой кнопки; как я могу сделать это программно?
Ответ №1:
[aButton setTitleColor:[UIColor grayColor] forState: UIControlStateNormal]
затем вы можете изменить цвет при нажатии другой кнопки, используя тот же код, что и выше, но с другим цветом.
Комментарии:
1. хорошо, но если у меня 20 кнопок, должен ли я переключаться между ними каждый раз? Я думаю, было бы неплохо обрабатывать состояния автоматически
Ответ №2:
Одним из способов циклического перемещения по кнопкам было бы установить теги на кнопках, которые вы хотите циклически перемещать. Я использую этот фрагмент кода для настройки типов клавиш возврата клавиатуры для каждого из моих UITextFiles:
NSInteger tag = 1;
UIView *aView;
while ((aView = [contentView viewWithTag:tag])) {
if([aView isKindOfClass:[UITextField class]]){
[(UITextView *)aView setReturnKeyType:UIReturnKeySend];
}
tag ;
}
Итак, я предполагаю, что вы могли бы сделать что-то вроде этого:
NSInteger tag = 1;
UIView *aView;
while ((aView = [contentView viewWithTag:tag])) {
if([aView isKindOfClass:[UIButton class]]){
[ aView setTitleColor:[UIColor grayColor] forState: UIControlStateNormal];
}
tag ;
}