2016-10-23 46 views
-1
import UIKit 

class LoginController: UIViewController { 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     view.backgroundColor = UIColor(r: 61, g: 91, b: 151) 
    } 

    override func preferredStatusBarStyle() -> UIStatusBarStyle { 
     return .lightContent 

    } 
} 

extension UIColor { 

    convenience init(r: CGFloat, g: CGFloat, b: CGFloat) { 
     self.init(red: r/255, green: g/255, blue: b/255, alpha: 1) 

覆蓋任何方法,只要我改變方法不自其超

override var preferredStatusBarStyle: UIStatusBarStyle { 
     return UIStatusBarStyle.lightContent 
} 

我得到線程錯誤,不會讓我的模擬負載

+0

爲什麼要使用preferredStatusBarStyle作爲屬性? – Shoaib

+0

啊對,也許我誤解了你的問題。所以你已經嘗試過財產的方法,但仍然有一些錯誤? – hnh

回答

0

這是因爲它是一個變種,而不是一個FUNC 。試試這個:

override var preferredStatusBarStyle: UIStatusBarStyle { 
    return .lightContent 
} 
0

preferredStatusBarStyle是一個屬性,而不是一個函數。取而代之的

override func preferredStatusBarStyle() -> UIStatusBarStyle { 
    return .lightContent 
} 

使用

override var preferredStatusBarStyle : UIStatusBarStyle { 
    return .lightContent 
} 
+0

謝謝,那工作。 –

1

preferredStatusBarStyle是計算性能,而不是在你的問題說的功能。

override func preferredStatusBarStyle() -> UIStatusBarStyle { 
    return .lightContent 
} 

這裏就應該是這樣:

override var preferredStatusBarStyle: UIStatusBarStyle { 
    return .lightContent 
} 

這應該做的伎倆。

+1

這不僅僅是用'var'替換'func'的問題。您還需要刪除參數列表('()'),並將' - >'更改爲':' – Alexander