2016-07-19 156 views
19

你好我工作沒有UITextfield邊框顏色變化的錯誤代碼,但在Swift 3中使用它時,不要更改文本框邊框顏色,不要給出錯誤。我需要你的幫助我的代碼在下面。如何設置swift 3 UITextField邊框顏色?

@IBOutlet weak var email: UITextField! 
@IBOutlet weak var pass: UITextField! 


override func viewDidLoad() { 
    super.viewDidLoad() 

    let myColor : UIColor = UIColor.white() 
    email.layer.borderColor = myColor.cgColor 
    pass.layer.borderColor = myColor.cgColor 


} 

謝謝!

回答

44

您還需要設置border width,因爲你的邊框顏色設置已經但是默認的邊框寬度爲0.0,所以你不能看到它。

因此,設置邊框寬度類似,

email.layer.borderWidth = 1.0 

更新:

您的代碼應該是這樣的,

@IBOutlet weak var email: UITextField! 
@IBOutlet weak var pass: UITextField! 

override func viewDidLoad() { 
    super.viewDidLoad() 

    let myColor = UIColor.white 
    email.layer.borderColor = myColor.cgColor 
    pass.layer.borderColor = myColor.cgColor 

    email.layer.borderWidth = 1.0 
    pass.layer.borderWidth = 1.0 

} 
+0

謝謝你的工作,我認爲將幫助很多人ü可以寫全碼成你的答案我會接受它 – SwiftDeveloper

+0

不客氣... :)根據你的建議更新答案.. :) – Lion

+0

我認爲你需要刪除()在迅速3 –

5

嘗試使用這個, 它可能對你有幫助

let myColor : UIColor = UIColor(red: 0.5, green: 0.5, blue:0, alpha: 1.0) 
myTextField.layer.masksToBounds = true 
myTextField.layer.borderColor = myColor.CGColor 
myTextField.layer.borderWidth = 2.0 
5

我想你應該首先提供一個borderWidth

@IBOutlet weak var email: UITextField! 
@IBOutlet weak var pass: UITextField! 


override func viewDidLoad() { 
super.viewDidLoad() 

let myColor : UIColor = UIColor.white() 
email.layer.borderWidth = 1 
email.layer.borderColor = myColor.cgColor 
pass.layer.borderColor = myColor.cgColor 


} 

,然後設置一個顏色:)

+1

謝謝你的工作,我認爲會幫助很多人 – SwiftDeveloper

4

更新斯威夫特3:

如果要設置在底邊框來的UITextField,下面的代碼行使用

//功能定義:

func setBottomBorderToTextFields() { 

    let bottomLine = CALayer() 
    bottomLine.frame = CGRect(x: 0, y: yourTextFieldName.frame.height - 1, width: yourTextFieldName.frame.width, height: 1) 
    bottomLine.backgroundColor = UIColor.gray.cgColor // background color 
    yourTextFieldName.borderStyle = UITextBorderStyle.none // border style 
    yourTextFieldName.layer.addSublayer(bottomLine) 
} 

//在viewDidLoad中():

self.setBottomBorderToTextFields() 
5

使用下面的代碼在swift 3

鑑於

做負載

outer_line.layer.borderWidth = 1 
outer_line.layer.borderColor = UIColor.lightGray.cgColor