2017-01-03 4 views
0

Dies ist das gewünschte Design für die Textfelder:Wie mache ich meine Textfelder als Linien statt als Kästchen?

This is the desired design for the Textfields

Dies ist, was ich entworfen habe:

This is what I have designed

Muss ich einige Bibliotheken importieren oder ein paar Schoten installieren? Gibt es einen programmatischen Weg dazu?

+0

Nein, Sie können unteren Rand statt ganzer Rahmen zeichnen –

+0

Sie können Grenze des Textfelds auf keine setzen und kleine Ansichten unter jedem Textfeld hinzufügen –

+0

Wie mache ich das? –

Antwort

0

In swift, habe ich es mit folgenden Code erreicht:

class viewController: UIViewController 
{ 
    @IBOutlet weak var textfield: UITextField! 

    let layer : CALayer = CALayer() 

    override func viewDidLoad() 
    { 
     textfield.borderStyle = .none // can do this in xib or storyboard too 
     textfield.layer.masksToBounds = true 
     layer?.borderColor = UIColor.lightGray.cgColor 
     layer?.borderWidth = 1.0 
     textfield.layer.addSublayer(layer) 
    } 

    override func viewDidLayoutSubviews() 
    { 

     layer?.frame = CGRect(x: 0, 
           y: textfield.frame.size.height - 1, 
           width: textfield.frame.size.width, 
           height: 1.0) 



    } 

} 
+0

Als Anmerkung: Dies ist einer der Fälle, in denen es eine gute Praxis ist, zu definieren Die Ebene muss vom Typ 'CALayer!' sein, da 'viewDidLoad' definitiv vor' viewDidLayoutSubviews' aufgerufen wird – luk2302

1

Unten finden Sie den Code ein.

Ausgang:

enter image description here

0

Sie können CosmicMind des Materials Framework verwenden und textfield Objekt verwenden. Sie können das Framework über cocoapods installieren und den Beispielen folgen, die sie im Repo haben.

Verwandte Themen