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

投稿者: | 2016年7月17日
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

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

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

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

[adsense]

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


コメントを残す

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください