Попробуйте класс UIGestureRecognizer
.
Эта реализация позволит вам распознавать различные предопределенные взаимодействия с пользователем.
UITapGestureRecognizer
- это необходимый вам подкласс.
В вашем контроллереВы можете сделать следующее:
// Do this in your viewDidLoad
// Instance variable
recognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(doubleTap)];
[recognizer setMinimumNumberOfTouches:2];
[recognizer setMaximumNumberOfTouches:2];
И добавить метод для кнопок:
- (void) doubleTap {
//Hide/unhide buttons
}
Для кнопок сначала нужно добавить их как выходы (переменные экземпляра с ключевым словом IBOutlet) иВы должны добавить их к вашему мнению.Убедитесь, что связали их.См. здесь .
Когда вы связываете их, вы можете использовать следующую инструкцию, чтобы скрыть / показать их.
Первый вариант:
buttonOne.hidden = !buttonOne.hidden
buttonTwo.hidden = !buttonTwo.hidden
Второй вариант:
//Add a instance variable hideButtons of type BOOL. I prefer this, your always sure the hidden value for each button has the same value.
hideButtons = !hideButtons
buttonOne.hidden = hideButtons
buttonTwo.hidden = hideButtons
В вашем viewDidLoad вы должны явно установить hideButtons к вашему начальному значению.Хотя это не требуется, когда логическое значение ложно, но я всегда делаю это для ясности.
Надеюсь, это было полезно.