Событие дает доступ ко всем касаниям через allTouches
. Даже касания, в настоящее время не активные (не движутся, не начинаются, не заканчиваются и не отменяются).
for (UITouch* touch in [[event allTouches]allObjects]) //loops through the list of all the current touches
touches
- список всех касаний, которые изменились и имеют право на текущее событие.
for (UITouch* touch in [touches allObjects]) //loops through the list of all changed touches for this event.
Так что для touchesBegan:withEvent:
- Если один палец коснется экрана,
touches
и [event allTouches]
будут иметь одинаковое содержимое.
- Если второй палец касается экрана,
touches
предоставит UITouch, связанный с этим пальцем, а [event allTouches]
предоставит UITouch для этого пальца и того, который уже касается экрана.
- Если 2 дополнительных пальца касаются экрана в одно и то же время,
touches
предоставит UITouch для 2 дополнительных пальцев, а [event allTouches]
предоставит 4 экземпляра UITouch.
Теперь в случае touchesEnded:withEvent:
- Если поднять один палец,
touches
предоставит доступ к экземпляру UITouch, связанному с этим пальцем, а [event allTouches]
предоставит 4 экземпляра UITouch, даже один из последних прикосновений.