post Image
1行で全てのUIButton(UIView)の同時押しを無効にする

全てのUIButtonの同時押しを無効にするには、Viewを再帰的に掘るしか方法が無いと思っていました。
思いつきで試してみたらできたので、今更ですがメモしておきます。

UIButton.appearance().isExclusiveTouch = true
もしくは
UIView.appearance().isExclusiveTouch = true

これだけです。appearanceなのに見た目の設定ではないのでちょっと気持ち悪いですが…
UIViewの方なら、GestureRecognizerで実装している場合も含めて同時押し制御できるかもしれないです。

※動作は確認できていますが、意図された使い方ではない可能性もあり、今後のiOSのアップデートで予期せぬ動作をするようになるかもしれないのでご留意ください。


『 Swift 』Article List