0
首先,我试过linkdidFinishLaunchingWithOptions
。它总是在我的苹果电视模拟器中返回未指定。是否有任何其他解决方案来检查苹果电视设置上设置了哪种外观样式?我如何获得苹果电视设置的外观样式?
我想改变我的tvOS应用程序的主题尊重黑暗或轻的外观风格。
首先,我试过linkdidFinishLaunchingWithOptions
。它总是在我的苹果电视模拟器中返回未指定。是否有任何其他解决方案来检查苹果电视设置上设置了哪种外观样式?我如何获得苹果电视设置的外观样式?
我想改变我的tvOS应用程序的主题尊重黑暗或轻的外观风格。
您需要检查traitCollectionDidChange中的当前样式并更新其中的UI。
从苹果文档
实现视图控制器和视图这种方法,可以根据您的应用程序的需求,对这种变化做出反应。
使用范例
class DetailsHeaderCell: UICollectionViewCell {
@IBOutlet private(set) var title: UILabel!
override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
super.traitCollectionDidChange(previousTraitCollection)
title.layer.borderColor =
traitCollection.userInterfaceStyle == .dark ?
UIColor.white.cgColor : UIColor.black.cgColor
}
}
我是如何实现 “traitCollectionDidChange” 在swift3编程。你能给一个示例代码吗? –
只有在用户在使用应用程序时更改外观时,才会调用类似'traitCollectionDidChange'的声音。您可以使用'UIUserInterfaceStyle'检查外观样式:http://stackoverflow.com/a/39562883/2108547 –