«UIScreen» не имеет элемента «main»

#swift3 #uiscreen

#swift3 #uiscreen

Вопрос:

Среда:
Xcode версии 8.1 beta (8T47)
Apple Swift версии 3.0.1 (swiftlang-800.0.56 clang-800.0.42)

Компилятор Swift 3.0.1 пометил «UIScreen» как «… нет члена». введите описание изображения здесь

…но в файле UIScreen есть «main»:

@доступно (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
 

Я обнаружил множество экземпляров определенного класса, не имеющих определенного члена.
И это было после преобразования кода в Swift 3.0.1 с помощью вспомогательной функции преобразования Xcode.
Что дает?


Примечание: я смог получить доступ к UIScreen.main.scale через игровую площадку.
Похоже, что я работаю с поврежденным файлом swift.

Комментарии:

1. попробуйте UIScreen().scale

Ответ №1:

Swift3.0.1, поскольку UIScreen является классом фреймворка UIKit.Поэтому убедитесь, что вы импортировали.

 import UIKit