【Swift】Navigation Controller配下の特定のView Controllerから指定したView Controllerに戻る

SwiftSwift

*Swift5, Xcode ver 12.1

スポンサーリンク

元のNavigation barに表示されている”戻るボタン”を非表示にて自作のボタンに置き換える

 override func viewDidLoad() {
        super.viewDidLoad()
        
        self.navigationItem.hidesBackButton = true
        let newBackButton = UIBarButtonItem(title: "Back", style: UIBarButtonItem.Style.plain, target: self, action: #selector(DetailViewController.back(sender:)))
                self.navigationItem.leftBarButtonItem = newBackButton
        
    }

ここでどこに戻るかを決める

popToRootViewControllerでNavigation bar配下のTopに戻る

  @objc private func back(sender: UIBarButtonItem) {
        self.navigationController?.popToRootViewController(animated: true)

        }
スポンサーリンク
タイトルとURLをコピーしました