Swift 3 中的 prefersStatusBarHidden、preferredStatusBarStyle 属性
prefersStatusBarHidden, preferredStatusBarStyle properties in Swift 3
开始Swift3/iOS10,preferredStatusBarStyle和prefersStatusBarHidden等方法变成:
@available(iOS 7.0, *)
open var preferredStatusBarStyle: UIStatusBarStyle { get }
@available(iOS 7.0, *)
open var prefersStatusBarHidden: Bool { get }
因此不再构建用于覆盖方法的现有代码。鉴于这些属性是只读的,您如何为它们赋值/覆盖它们?
您需要了解在 Swift 中(从第一个 public beta pre-1.0 开始),您可以覆盖属性。只读属性可以像这样被覆盖:
override var preferredStatusBarStyle: UIStatusBarStyle {
return yourPreferredStatusBarStyle
}
现在您需要覆盖 属性:
override var prefersStatusBarHidden: Bool{
get{
return true
}
}
您可以在 Viewcontroller
中覆盖 preferredStatusBarStyle
像这样
override var preferredStatusBarStyle: UIStatusBarStyle {
return .lightContent
}
开始Swift3/iOS10,preferredStatusBarStyle和prefersStatusBarHidden等方法变成:
@available(iOS 7.0, *)
open var preferredStatusBarStyle: UIStatusBarStyle { get }
@available(iOS 7.0, *)
open var prefersStatusBarHidden: Bool { get }
因此不再构建用于覆盖方法的现有代码。鉴于这些属性是只读的,您如何为它们赋值/覆盖它们?
您需要了解在 Swift 中(从第一个 public beta pre-1.0 开始),您可以覆盖属性。只读属性可以像这样被覆盖:
override var preferredStatusBarStyle: UIStatusBarStyle {
return yourPreferredStatusBarStyle
}
现在您需要覆盖 属性:
override var prefersStatusBarHidden: Bool{
get{
return true
}
}
您可以在 Viewcontroller
中覆盖 preferredStatusBarStyle像这样
override var preferredStatusBarStyle: UIStatusBarStyle {
return .lightContent
}