Я работаю над реализацией перетаскивания для UICollectionView
и пытаюсь наблюдать его свойство ' hasActiveDrag ', чтобы обрабатывать соответствующие пассивные изменения, когда перетаскивание заканчивается / завершается неудачей.
Не уверен, что мне не хватает чего-то тривиального, но это конкретное свойство (и несколько связанных свойств) не возвращает никаких обратных вызовов в changeHandler
, несмотря на изменения значения.
Вот что я ' Я пытаюсь сделать:
dragSessionObserver = self.myCollectionView.observe(\.hasActiveDrag, options: [.new, .initial], changeHandler: { (cv, change) in
//blah blah blah
})
И когда я пытаюсь сделать это с другими свойствами, он работает как задумано ...
PS
Зачем наблюдать, когда у меня есть положения о делегате?
Делегат не вызывается при сбое / отмене сеанса. Единственный известный мне способ захвата неудачных сеансов - это функция dragStateDidChange
ячейки, которая также вызывается во время повторного использования и перезагрузки. Следовательно, я не могу полагаться исключительно на него только в случае неудачных обратных вызовов. Итак, я решил выбрать КВО. Буду признателен за лучший способ фиксировать сбои / отмены сеансов