В моем SecondViewController
у меня есть UITableView
с обычаем UITableViewCell
, где у меня есть UIPanGestureRecognizer
, и я хочу, чтобы это терпеть неудачу, когда otherGestureRecognizer
является UIPanGestureRecognizer
от ViewController FirstViewController
Узнайте мнение жест был установлен
UIPanGestureRecognizer
из клетка установлена на себя, и я попытался с помощью gestureRecognizer: shouldRequireFailureOfGestureRecognizer
:
override func gestureRecognizer(gestureRecognizer: UIGestureRecognizer, shouldRequireFailureOfGestureRecognizer otherGestureRecognizer: UIGestureRecognizer) -> Bool {
let view = otherGestureRecognizer.view
if let view as? FirstViewController.view { // Obviously doesn't work
return true
}
return false
}
вопрос заключается в том, как я могу провалить UIPanGestureRecognizer
из UITableViewCell
, когда жест был RECOG из FirstViewController?
Забудьте о распознавателях жестов на мгновение. С точки зрения более высокого уровня, что вы пытаетесь сделать? – matt
В моем FirstViewController у меня есть 2 представления, добавленные из двух других ViewControllers. Когда я использую 'UIScreenEdgePanGestureRecognizer' для панорамирования верхнего вида, состояние изменится на' open', а 'UIPanGestureRecognizer' будет включен, поэтому я смогу откинуть верхний вид на своем месте. Это хорошо работает, если не существует «UITableViewCell». Ячейки имеют свой собственный 'UIPanGestureRecognizer', который мешает мне перетащить верхний вид. – Eendje
Если возможно, я хотел бы решить его с помощью UIGestureRecognizerDelegate вместо использования другого делегата или 'NSNotification'. – Eendje