Функция вызывает себя несколько раз без какой -либо очевидной причины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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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