【问题标题】:How I can put back button in first scene in Swift3.0?如何在 Swift3.0 的第一个场景中放回按钮?
【发布时间】:2018-11-02 05:29:03
【问题描述】:

我有两个故事板,SB_A,SB_B 所以当我点击 SB_A 的按钮时,它会调用

let storyboard: UIStoryboard = UIStoryboard(name: "SB_B", bundle: nil)
        let nextView = storyboard.instantiateInitialViewController()
        self.present(nextView!, animated: true, completion: nil)

所以我可以看到 SB_B 故事板。 但我在 SB_B 的第一个场景中看不到后退按钮

我想在右场景放回按钮,当我点击它时,回到 SB_A 故事板。

如何在故事板的第一个场景中放置返回按钮?

【问题讨论】:

    标签: swift segue back-button


    【解决方案1】:

    在 SB_B viewdidload 中添加这些行

    navigationItem.leftBarButtonItem = UIBarButtonItem(title: "Back", style: .plain, target: self, action: #selector(self.leftNavigationItemAction(_:)))
    }
    
    @objc func leftNavigationItemAction(_ sender: UIBarButtonItem) -> Void {
           _ = popOrDismissViewController(true)
    }
    

    试试这个……

    【讨论】:

    • 发生错误,使用未解析的标识符'popOrDismissViewController
    • 去掉 popOrDismissViewController(true) 并添加这一行 self.navigationController?.popViewController(animated: animated)
    • 欢迎您@PolarisNation
    【解决方案2】:

    不,您不能使用 popviewonctroller 或 Dissmisviewcontroller 返回到以前的故事板的视图控制器,您必须显式管理此返回功能以使用 push 或 present 获得所需的功能。

    【讨论】:

    • 它只能用于相同的情节提要。更改情节提要意味着您正在更改根控制器,然后导航层次结构从 0 开始
    • 1.如果您需要以前的视图控制器而不是根视图控制器,那么您只需要一个 popViewController。
    猜你喜欢
    • 2015-09-07
    • 1970-01-01
    • 2012-05-04
    • 1970-01-01
    • 1970-01-01
    • 2021-12-09
    • 1970-01-01
    • 1970-01-01
    • 2020-03-07
    相关资源
    最近更新 更多