Четыре метода уведомления о касаниях


Новости apple, четыре метода уведомления о касаниях

Разработчики класса UlSwitch встроили в него код обработки жестов, и поэтому он способен реагировать на касание.


Однако нередко обрабатываемый жест оказывает воздействие не только на тот объект, на котором произошло касание, и тогда код обработки жестов принадлежит классу контроллера представления. Так, если пользователь, касаясь одной строки, делает жест, который означает удаление всех строк, такой жест должен быть обработан кодом, находящимся в контроллере представления.


Порядок реагирования на касания и жесты в обоих случаях остается одним и тем же независимо от класса, к которому принадлежит код их обработки.


Для уведомления реагирующего элемента о касаниях имеются четыре метода: touches Began:withEvent:, touchesMoved:withEvent:, touchesEndediwithEvent: и touches CancellediwithEvent:.


Когда пользователь впервые касается экрана, устройство, работающее под управлением системы iOS, находит реагирующий элемент, у которого имеется метод touchesBegan:withEvent:. Для того чтобы выяснить, когда пользователь только начинает жест или стучит по экрану пальцем, следует реализовать данный метод в текущем представлении или в его контроллере. Ниже приведен пример того, как может выглядеть такой метод.


Для того чтобы определить количество пальцев, приложенных в настоящий момент к экрану, достаточно получить подсчитанное количество объектов, содержащихся в объекте touches. Каждый такой объект представляет собой событие типа UITouch, обозначающее касание экрана одним пальцем. Если же такое касание составляет лишь часть последовательного ряда постукиваний пальцем по экрану, то подсчитанное количество таких постукиваний можно определить, запросив любой из объектов типа UITouch. Если в объекте touches содержится несколько объектов, значит, количество постукиваний должно быть равно единице, поскольку система подсчитывает постукивания только в том случае, если каждое из них совершается одним пальцем по экрану. Так, если в приведенном выше примере количество касаний, запоминаемых в переменной numTouches, равно 2, это означает, что пользователь стукнул по экрану одновременно двумя пальцами.


Не все объекты, содержащиеся в объекте touches, могут соответствовать представлению или контроллеру представления, в котором реализован данный метод. Например, ячейку табличного представления, вероятно, мало должны заботить касания других строк таблицы или навигационной панели.


  • Дата: 17-01-2015, 14:08

Предыдущие статьи сайта:

Понравилась статья? Ставь лайки, рассказывай друзьям!



Отзывы о статье: Четыре метода уведомления о касаниях

Технологии, секреты и фишки Apple: Iphone, iPad, iPod