есть ли событие для удержания кнопки - PullRequest
0 голосов
/ 16 декабря 2011

Так что, конечно, есть события на UIControlEventTouchUpInside для нажатий кнопок.Но что мне интересно, если вы можете сказать, когда кнопка удерживается в течение определенного периода времени?

Ответы [ 2 ]

4 голосов
/ 16 декабря 2011

Нет никаких UIControlEvent s, которые соответствуют длительному нажатию, но есть класс UILongPressGestureRecognizer, который можно применить к любому объекту вида, который будет вызывать метод через target / action, если длительное нажатие распознан.

Описание класса UILongPressGestureRecognizer

2 голосов
/ 16 декабря 2011

Вы можете установить таймер, когда ваша кнопка получает событие касания. Если кнопка получает событие касания, отключите таймер. Если вместо этого срабатывает таймер, то кнопка удерживается в течение назначенного вами периода, и вы можете выполнять любые действия, которые вам нравятся в методе стрельбы.

Это то, что я сделал на OS X, где ситуация несколько иная. Позволить UIKit обрабатывать это через UILongPressGestureRecognizer, как предложил Марк Адамс, вероятно, лучшая идея.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...