2015-04-03 18 views

cevap

51

'u nasıl uygulayabilirim Evet, bu mümkün. İşte nasıl yapılır:

CALayer *border = [CALayer layer]; 
CGFloat borderWidth = 2; 
border.borderColor = [UIColor darkGrayColor].CGColor; 
border.frame = CGRectMake(0, textField.frame.size.height - borderWidth, textField.frame.size.width, textField.frame.size.height); 
border.borderWidth = borderWidth; 
[textField.layer addSublayer:border]; 
textField.layer.masksToBounds = YES; 

Bu yardımcı olur umarım!

+0

Teşekkür için güncellenmiş

CALayer *bottomBorder = [CALayer layer]; bottomBorder.frame = CGRectMake(0.0f, self.passwordField.frame.size.height - 1, self.passwordField.frame.size.width, 1.0f); bottomBorder.backgroundColor = [UIColor blackColor].CGColor; [self.passwordField.layer addSublayer:bottomBorder]; 

+0

"UILabel" yazabilirsiniz. –

+1

Bu konuda daha fazla bilgi verebilir –

-1

Swift User4645956 çözümü

private func addBottomLineToTextField(textField : UITextField) { 
    let border = CALayer() 
    let borderWidth = CGFloat(1.0) 
    border.borderColor = UIColor.whiteColor().CGColor 
    border.frame = CGRectMake(0, textField.frame.size.height - borderWidth, textField.frame.size.width, textField.frame.size.height) 
    border.borderWidth = borderWidth 
    textField.layer.addSublayer(border) 
    textField.layer.masksToBounds = true 
} 

Kullanımı:

self.addBottomLineToTextField(usernameTextField) 
    self.addBottomLineToTextField(passwordTextField) 
8

Swift:

extension UITextField { 

    func useUnderline() { 

     let border = CALayer() 
     let borderWidth = CGFloat(1.0) 
     border.borderColor = UIColor.blackColor().CGColor 
     border.frame = CGRectMake(0, self.frame.size.height - borderWidth, self.frame.size.width, self.frame.size.height) 
     border.borderWidth = borderWidth 
     self.layer.addSublayer(border) 
     self.layer.masksToBounds = true 
    } 
} 

şöyle Çağrı:

yourtextFieldName.useUnderline() 
+0

border.frame = CGRectMake (0, self.frame.size.height - borderWidth, self.frame.size.width, borderWidth) –

0

Basitçe Swift 3.0

işe yaradı
extension UITextField {  

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

Ios

tek alt Hattı ile TextField CALayer kullanın. Bir metin kutusuna varsayılan metni ayarlayabildiğim herhangi bir yol var mı ama txtview.text.length yaptığımda hala 0 gösteriyor. Uzunluk sadece gerçek metin girdiğimde artırılmalı
İlgili konular