2016-11-21 1 views
8

Мое приложение имеет довольно много кнопок на каждом экране, а также кнопку обратной связи UIBarButtonItem, и у меня есть проблемы с возможностью многократного нажатия кнопок. Мне нужно всего одну кнопку, чтобы ее можно было одновременно кликать.Как отключить Multi Touch на UIBarButtonItems & UI Buttons?

Кто-нибудь знает, как сделать кнопку обратной связи UIBarButtonItem эксклюзивной для прикосновения?

Мне удалось отключить многократное нажатие на UIButtons, установив для каждого из них представление isExclusiveTouch = true, но это не похоже на кнопку «Назад» на панели навигации.

Задняя кнопка, похоже, не придерживается isExclusiveTouch.

Есть ли у кого простая работа, которая не включает в себя кодирование каждой кнопки отправки событий?

Большое спасибо,

Krivvenz.

ответ

1

Вы можете написать расширение для UIBarButtonItem, чтобы добавить isExclusiveTouch?

+1

Я не думаю, что это исправит его, поскольку UIBarButtonItem кажется не «на том же уровне», что и другие кнопки. Мне интересно, хотя бы какой-то метод протокола или делегата работал бы. – Krivvenz

+1

Как насчет написания собственного расширения для обоих типов кнопок, а затем вы можете сделать чек для AnyObjects? – AMAN77

+1

Можете ли вы предоставить пример кода для этого, пожалуйста? :). – Krivvenz

1

вы можете просто отключить свойство multi-touch супер-просмотра. Вы также можете найти это свойство в раскадровке.

enter image description here

+0

Hi Aman, все мои экраны уже отключены Multi Touch ... по умолчанию я думаю. Это не устраняет проблему. – Krivvenz

3

вы можете включить эксклюзивное прикосновение просто это остановит несколько касание до первого касания не будет сделано

buttton.exclusiveTouch = true 
0

вы могли бы попробовать это на сцене, где вы хотите, чтобы отключить многократное прикосновение.

let skView = self.view as! SKView 
skView.isMultipleTouchEnabled = false 
Смежные вопросы