2016-09-18 2 views

ответ

8

Используя UIUserInterfaceStyle, первый доступный в tvOS 10, мы можем проверить, какой внешний вид пользователь установил.

Например:

func checkInterfaceStyle() { 
    guard(traitCollection.responds(to: #selector(getter: UITraitCollection.userInterfaceStyle))) 
     else { return } 

    let style = traitCollection.userInterfaceStyle 

    switch style { 
    case .light: 
     print("light") 
    case .dark: 
     print("dark") 
    case .unspecified: 
     print("unspecified") 
    } 
} 

Кроме того, если вы обновляете с/tvOS 9.0 проекта Xcode 7 вам нужно будет включить UIUserInterfaceStyle в вашем info.plist. Новые проекты, созданные с помощью Xcode 8, уже включены в этот ключ.

enter image description here

<key>UIUserInterfaceStyle</key> 
    <string>Automatic</string> 
+0

Я попробовал эту кодировку 'didFinishLaunchingWithOptions', но это всегда показывает 'неопределенные'. –

+0

@Anas, который может быть слишком ранним для проверки. Попробуйте переместить его в свой первый VC 'viewDidLoad'. Убедитесь, что у вас есть ключ, включенный в ваш info.plist. –

+0

Я пробовал, все еще ** неуказанный **. –