swift - (UIApplication.shared.keyWindow?.rootViewController as?BaseSlidingController)?.openMenu() return nil Swift 4.2
问题描述
我对上述内容有疑问。我在论坛上找不到确切的信息。它们中的大多数已经过时了,我已经以编程方式编写了代码。我有一个控制器,其中包含一个用于编辑配置文件的视图。更改下面列出的功能后,我无法访问它。我将 rootviewcontroller 设置为其他内容,但无论如何我尝试了 UiApplication 调用,它返回 nil,我无法打开配置文件控制器。这是下面列出的功能。
@objc func handleOpen2() {
(UIApplication.shared.keyWindow?.rootViewController as? BaseSlidingController)?.openMenu()
}
Xcode 没有给我一个错误,但我无法打开我的菜单。我的 rootviewcontroller 在应用程序委托中设置为其他内容。我有一个控制器,用于在按下编辑配置文件按钮时控制滑动菜单。
func openMenu() {
isMenuOpened = true
redViewLeadingConstraint.constant = menuWidth
redViewTrailingConstraint.constant = menuWidth
performAnimations()
setNeedsStatusBarAppearanceUpdate()
}
此代码用于打开包含我需要的信息的侧栏菜单,也用于执行动画。我想知道是否有人知道我可以在我的 handleOpen2 函数中做些什么。如果您需要更多代码,请告诉我。谢谢
解决方案
在 swift 5 版本上:
(UIApplication.shared.windows.first?.rootViewController as? BaseSlidingController)?.openMenu()
推荐阅读
- r - 为什么在指定missing =“film”时lavaan会进行列表删除?
- html - 如何将标题内的文本与图像 html 对齐?
- javascript - React Router 刷新 URL 但不刷新页面
- javascript - 检查对象数组中的每个值
- bash - 使用不同数量的键解析 yaml 文件:值
- python - Kivy - 标签文本不(总是)动态更新
- entity-framework - 实体框架 - 删除不会更新数据库中的孙实体
- for-loop - For 循环仅使用 i 和 j 获取迭代次数
- c - 在Linux中4K随机读取同一文件的适当方法?
- javascript - 从目录导入所有 json 文件不起作用