[iOS] iOS13.1でSegmentedControlがスクロールしなくなった問題に対応する

iOS13.1がリリースされましたが、UISegmentedControlがスクロールしなくなる問題がありました。 ## 現象 iOS13.1で横に長いSegmentedControlをUIScrollViewに入れて横スクロースさせている場合に 横スクロールがしにくくなる。 ## 原因 iOS13.1からUISegmentedControlの挙動が変わっているようです。 ## 対処法 UISegmentedControlのサブクラスを作成して以下の様にメソッドをオーバーライドする ```c `gutter:false; override func gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool { return true } ``` そもそも、いくつも選択肢がある場合にSegmentedControlを使うのがよくないのですが、 どうしても使わなくてはならない場合は上記の方法で改善できます。 ## 参考URL * [iOS 13 Segmented Control: Remove swipe gesture to select segment](https://stackoverflow.com/questions/58177165/ios-13-segmented-control-remove-swipe-gesture-to-select-segment)

0 件のコメント :

コメントを投稿