概要
PageViewControllerはデフォルトで左右のスワイプの他、View両端のタップも検知し、befor、afterメソッドを着火している。
スワイプのみ検知し、View両端のタップは無効とするよう処理を施す。
実装
PageViewControllerに登録されているUITapGestureRecognizerを取り出し、無効にする。
//pageViewの両端タップを無効に let tapGestureRecognizer = pageViewController?.gestureRecognizers.filter{ $0 is UITapGestureRecognizer }.first as! UITapGestureRecognizer tapGestureRecognizer.isEnabled = false
参考
UIPageControllerで一部のGestureのみを無効にする方法 - Qiita
調べても中々出てこず、かなり対応までに時間がかかった。記事に感謝。
リンク
リンク