У меня есть типичное требование, когда мне нужно, чтобы кнопка оставалась в выделенном состоянии после ее нажатия. Мне нужно выполнить задачу, которая должна работать только тогда, когда кнопка находится в выделенном состоянии. На самом деле я настраиваю состояние кнопки на программное выделение.
[sender setHighlighted: YES];
И когда кнопка находится в выделенном состоянии, мне нужно выполнить другое действие.
- (IBAction)changeState: (UIButton*)sender
{
if (sender.highlighted == YES)
{
[self performSomeAtion:sender];
}
}
Но, к моему ужасу, всякий раз, когда я нажимаю любую кнопку, вышеупомянутое условие выполняется, и действие выполняется неоднократно. Можно ли каким-либо образом сохранить выделение состояния UIButton после его нажатия?
РЕДАКТИРОВАТЬ - На самом деле мне нужно выполнить 3 разных действия для 3 разных состояний кнопки. Я уже использую выбранное состояние и нормальное состояние. Теперь мне нужно использовать выделенное состояние.