Если вам нужно вызвать обе эти функции распознавания жестов касания из UIBarButtonItem
, лучше всего создать элемент кнопки панели пользовательского вида и добавить распознаватели жестов в это настраиваемое представление.Примерно так будет работать:
let tapGestureView = UIView() // initialize & size this as you need
tapGestureView.addGestureRecognizer(UITapGestureRecognizer(action: #selector(handleCardTap(_:)), target: self))
tapGestureView.addGestureRecognizer(UITapGestureRecognizer(action: #selector(handleCardPan(_:)), target: self))
let barButton = UIBarButtonItem(customView: tapGestureView)
Вот некоторые дополнительные ресурсы для UITapGestureRecognizers и UIBarButtonItems .Хотя кажется немного странным настроить 2 разных касания для одного и того же вида, и один из них, являющийся панорамированием (по крайней мере, по названию), кажется странным, но вот как вы этого добьетесь!