web-dev-qa-db-ja.com

Swift 3 UITextFieldの境界線の色を設定する方法

こんにちは、UITextfieldの境界線の色を変更するためのエラーコードはありませんが、Swift 3で使用すると、テキストフィールドの境界線の色を変更できず、エラーが発生しません。以下に私のコードの助けが必要です。

@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
SwiftDeveloper

また、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

}
92
Lion

Swift 3で次のコードを使用します。

ビューでロードしました

 outer_line.layer.borderWidth = 1
 outer_line.layer.borderColor = UIColor.lightGray.cgColor
10
Nimisha joshy

これを使用してみてください、あなたに役立つかもしれません

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
8
Ashish Thakkar

最初に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


}

そして、色を設定します:)

6
kamwysoc

Swift 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
Kiran jadhav

動いています。

  1. ボーダー幅を与える
  2. そしてbgcolorを与えた後。
txtemail.layer.borderWidth = 1.0
txtemail.layer.borderColor = UIColor.blue.cgColor

それは間違いなく動作します

1
Dynamic Methods