UINavigationBarのBackボタンをUIBarButtonItemでカスタマイズするとエッジスワイプジェスチャーが効かなくなる件の対処(Swift)

By | 2016年7月17日

UINavigationBarのBackボタンに対してUIBarButtonItemを用いて独自に設定を行うとエッジスワイプジェスチャーが効かなくなりますが、以下の方法で有効にできます。

FirstViewController(遷移元)からSecondViewController(遷移先)をpush、SecondViewControllerにBackボタンがある構造を前提として、

class SecondViewController: UIViewController, UIGestureRecognizerDelegate {
	・・・
	override func viewDidLoad() {
	     super.viewDidLoad()
		・・・    
         self.navigationController.interactivePopGestureRecognizer.delegate = self        
		・・・    
	}
	・・・    
}

SecondViewControllerにデリゲートとしてUIGestureRecognizerDelegateを設定、viewDidLoadあたりでデリゲートインスタンスを設定します。これでOKです。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です