无法访问 SceneDelegate 类变量/属性

Posted

技术标签:

【中文标题】无法访问 SceneDelegate 类变量/属性【英文标题】:Cannot access SceneDelegate class variable/property 【发布时间】:2020-04-20 16:37:37 【问题描述】:

我正在尝试访问在 SceneDelegate 中声明的变量,但是我无法访问它。我的视图控制器中的代码如下:

let sceneDelegate = self.view.window.windowScene.delegate
let variableToAccess = sceneDelegate.variableToAccess

我认为可以做到这一点.. 不知道我错过了什么?谢谢

【问题讨论】:

【参考方案1】:

您尝试访问的属性是UISceneDelegate 类型。 因此,要获得值,您需要将委托属性转换为 SceneDelegate,如下所示:

if let sceneDelegate = self.view.window.windowScene.delegate as? SceneDelegate 
  let variableToAccess = sceneDelegate.variableToAccess
  print(variableToAccess)

【讨论】:

完美地将其投射到 SceneDelegate 让我到了那里 - 感谢您的时间 Jakub!

以上是关于无法访问 SceneDelegate 类变量/属性的主要内容,如果未能解决你的问题,请参考以下文章

python静态方法类方法属性方法

如何从 XCUIApplication 对象访问当前的 SceneDelegate?

无法查看从父类继承的属性 [重复]

Xcode11 新建工程中的SceneDelegate

Xcode 11. SceneDelegate func willConnectTo。不接受带有属性的函数

iOS 开发:成员变量(属性,实例变量)的相关知识