2017-06-15 8 views
0

以下は、UITextFieldの下部にある境界線のイメージです。 しかし、UITextFieldに完全に下線を引かない。 Not fully underline the TextField下部にある枠線がテキストフィールドの幅に収まらない

以下は私が使用しているコードです。 延長UITextFieldの{

func underlined(){ 
     let border = CALayer() 
     let width = CGFloat(1.0) 
     border.borderColor = UIColor.red.cgColor 
     border.frame = CGRect(x: 0, y: self.frame.size.height - width, width: self.frame.size.width, height: self.frame.size.height) 
     border.borderWidth = width 
     self.layer.addSublayer(border) 
     self.layer.masksToBounds = true 
    } 

} 

//あなたはUI Updation前メソッドと呼ばれている

yourTextField.underlined() 
+0

viewdidloadでthisTextField.underlined()を呼び出したか、そうでない場合は –

+0

はい、viewdidload()関数で –

+1

をviewdidで表示しようとしています –

答えて

1

呼び出すので、同期あなたの方法メインキューを呼び出して、他のViewdidAppearまたはViewWillappear

override func viewDidLoad() { 
    super.viewDidLoad() 
DispatchQueue.main.sync { 
     yourTextField.underlined() 
} 
} 
にあなたの方法を移動

または

override func viewDidAppear(_ animated: Bool) { 
    super.viewDidAppear(animated) 
    yourTextField.underlined() 
}