Функция вызывает себя несколько раз без какой -либо очевидной причиныIOS

Программируем под IOS
Anonymous
Функция вызывает себя несколько раз без какой -либо очевидной причины

Сообщение Anonymous »

Я работаю над приложением iOS, где у меня есть метод AnyArtboardEvent, который встает на снимки в мой стек Undo/Redo.
Вот упрощенная версия:
func AnyArtboardEvent(mergedImaged: UIImage = UIImage()) {
self.undoRedo?.Add(value: self.SlotViewsToCollection(mergedImage: mergedImaged))
self.UpdateControllerForActiveSlot()
}
< /code>
Метод добавления в моем классе Undiono просто добавляет значения к коллекции (нет рекурсии). < /p>
func Add(value: SlotViewCollection) {
var pointerTemp: Int = self.pointer
pointerTemp = pointerTemp + 1
self.pointer = pointerTemp
self.CheckValueAtIndex(value)
self.EnsureCollectionSize()
}

< /code>
Проблема состоит в том, что когда пользователь заканчивает взаимодействие с ползунком, я называю Anyartboardevent в фазе.if let touchEvent = event.allTouches?.first {
switch touchEvent.phase {
case .ended:
self.isAnyThingChange = true
self.AnyArtboardEvent() //
Но после отладки: < /p>
Когда взаимодействие слайдера заканчивается, Anyartboardevent называется три раза. < /p>
Первый вызов ожидается, но второй и третий вызовы случаются сразу же (без явного вызова). Block. Жест?>

Подробнее здесь: https://stackoverflow.com/questions/797 ... ent-reason

Вернуться в «IOS»