はじめに
SwiftのXLPagerTabStripというライブラリで、タップによるタブの切り替えをさせたくない場合の実装方法が特に記載されていないようだったので、メモとして書きます。
導入方法
XLPagerTabStripの導入方法はこちらやQiitaでも様々な方が書かれているので省略します。
無効化
スライドによる無効化は、親ビュー内で下記のように記載すると無効化されます。参考
これはスライドによる切り替えのみが無効化されるので、タップでのタブ切り替えは可能です。
containerView.isScrollEnabled = false
タップによる無効化は、ButtonBarPagerTabStripViewController内に設置されているbuttonBarView(UICollectionViewを継承したクラスButtonBarView)のタップを無効化することで可能です。
buttonBarView.isUserInteractionEnabled = false
// swiftのバージョンによっては下記の書き方になると思います
buttonBarView.userInteractionEnabled = false
有効化(無効化の解除)をする際はtrueを指定し直してあげると戻ります。