ios - 如果已经可见,视图控制器不显示
问题描述
我正在尝试从我的 AppDelegate 中展示一个视图控制器(用于通用链接)。我让它第一次呈现视图控制器,但如果视图控制器已经显示,它不会重新呈现它。
在视图控制器上,我只打印number
传递给视图控制器的内容(如下)。我number
从通用链接中的参数中获取 ,例如https://mywebsite.com/{number}
.
这是我的代码:
let storyboard = UIStoryboard(name: "Main", bundle: nil)
guard let root = self.window?.rootViewController as? UITabBarController else {
return
}
guard let vc = storyboard.instantiateViewController(withIdentifier: "MyViewController") as? MyViewController else {
return
}
// This is a number I pass to the controller
vc.number = number
if #available(iOS 13.0, *) {
vc.modalPresentationStyle = .automatic
} else {
vc.modalPresentationStyle = .overCurrentContext
}
vc.layoutType = MyViewController.LayoutType.normal
root.present(vc, animated: true)
}
同样,当我第一次展示这个视图控制器时,它正常工作。但是如果视图控制器已经显示,它不会重新显示它(使用不同的number
值,这意味着视图控制器没有显示正确的数字)。
我究竟做错了什么?
解决方案
推荐阅读
- node.js - 初始化另一个服务后,如何在 inversify 中绑定服务?
- asp.net - 复杂的 LINQ 查询 - 多表关系
- excel - Excel 的动态连接字符串中的错误
- c# - 如何从正在运行的 UWP 应用程序的窗口中检索图标/图像?
- android - 每次新建Activity都会报错“找不到符号类DaggerAppComponent”
- cucumber - 是否可以将 .spec 文件转换为 .feature 文件?
- python - Django build efficiency with API
- elasticsearch - 如果适用,按“年龄”提升 Elasticsearch 结果
- apache-spark - 聚类算法的建议?
- reactjs - 函数在钩子中运行一次