ios - 如何从递归视图控制器返回根视图控制器(四)
问题描述
class FourthViewController : UIViewController {
@IBOutlet weak var previousLabel: UILabel!
@IBOutlet weak var backButton: UIButton!
var delegate: FourthToFirst?
var label = ""
// MARK: - Lifecycle method
override func viewDidLoad() {
super.viewDidLoad()
previousLabel.text = label
let fourthViewController = storyboard?.instantiateViewController(withIdentifier: "FourthViewController") as? FourthViewController
navigationController?.pushViewController(fourthViewController!, animated: true)
}
// MARK: - IBAction
@IBAction func backToFirst(_ sender: Any) {
navigationController?.popToRootViewController(animated: true)
}
实际上我在第四视图控制器中它正在递归地进行(即一次又一次地推动第四视图控制器,不间断)
如果我按下控制器中的后退按钮,我必须返回(即 firstviewcontroller)
问题是:
在我的代码中它正在运行(即不停)
我无法按返回按钮返回(即 firstviewcontroller)
解决方案
navigationController?.popViewController(animated: true)
而不是navigationController?.popToRootViewController(animated: true)
可能是你需要的伴侣。(基于您刚刚编辑的内容)
推荐阅读
- javascript - 使用 React-hook 的函数组件是否可以从类组件内部渲染
- c++ - 如何以最优雅的 c++ 方式设计一个已经预定义标准颜色的颜色类?
- css - PHP选择下拉菜单多列,多种颜色
- python - 如何将 python 操作的结果发布为 SNS 消息
- migration - 通过导入 zip 文件恢复代理会给出“平台不支持的语言”错误 Dialogflow
- android - 只需获取新添加的 Child Firebase android
- android - 为什么菜单显示不正确?
- ssl - apache2 ssl 上的连接超时
- javascript - 是否可以在 Discord.js 中查询用户角色
- java - 是否可以分离 javafx ui 文件?