“UIScreen”没有成员“main”

Posted

技术标签:

【中文标题】“UIScreen”没有成员“main”【英文标题】:"UIScreen' doesn't have the member 'main' 【发布时间】:2017-02-25 20:26:19 【问题描述】:

环境: Xcode 版本 8.1 测试版 (8T47) 苹果 Swift 版本 3.0.1 (swiftlang-800.0.56 clang-800.0.42)

Swift 3.0.1 编译器将“UIScreen”标记为“...无成员”。

...但 UIScreen 文件确实有'main':

@available(ios 2.0, *) 开放类 UIScreen : NSObject, UITraitEnvironment

@available(iOS 3.2, *)
open class var screens: [UIScreen]  get  // all screens currently attached to the device

open class var main: UIScreen  get  // the device's internal screen

我发现了许多没有特定成员的特定类的实例。 这是在通过 Xcode 辅助转换函数将代码转换为 Swift 3.0.1 之后。 是什么赋予了?


注意:我可以通过 Playground 访问 UIScreen.main.scale。 看来我正在处理一个损坏的 swift 文件。

【问题讨论】:

试试 UIScreen().scale 【参考方案1】:

Swift3.0.1 由于 UIScreenUIKit 框架的类,所以请确保您已经导入。

import UIKit

【讨论】:

以上是关于“UIScreen”没有成员“main”的主要内容,如果未能解决你的问题,请参考以下文章

Xcode - 如何在不更改 UIScreen 大小的情况下添加 xib 启动屏幕

Xcode / Swift / UIScreen.main.bounds.size.height 返回 0

第六天:SwiftPopUPAndFadeOut

swift 字体自适应,宽高自适应

按钮不改变 SwiftUI 中的视图

使用高内存的 Swift 进程