2017-12-17 3 views
1

Ich versuche, zwischen zwei Steuerelementen eine Einschränkung hinzuzufügen: TextField und Separator. Aber ich kann kein Trennzeichen sehen. Was ist falsch in diesem Code?Fehlende Einschränkungen IOS 11 swift 4

func setupTextField() { 
    textField = UITextField(frame: CGRect(x: 0, y: 0, width: 97, height: 30)) 
    textField!.backgroundColor = .clear 
    textField!.placeholder = placeHolder 

    self.addSubview(textField!) 

    //MARK: Constraints 

    textField!.translatesAutoresizingMaskIntoConstraints = false; 
    textField!.topAnchor.constraint(equalTo: self.topAnchor).isActive = true 
    textField!.leftAnchor.constraint(equalTo: self.leftAnchor).isActive = true 
    textField!.rightAnchor.constraint(equalTo: self.rightAnchor).isActive = true 
} 

func setupSeparator() { 
    separator = UIView(frame: CGRect(x: 0, y: 32, width: 97, height: 1)) 
    separator?.backgroundColor = .lightGray 

    self.addSubview(separator!) 

    separator!.translatesAutoresizingMaskIntoConstraints = false; 
    separator!.topAnchor.constraint(equalTo: textField!.bottomAnchor, constant: 1).isActive = true 
    separator!.leftAnchor.constraint(equalTo: textField!.leftAnchor).isActive = true 
    separator!.rightAnchor.constraint(equalTo: textField!.rightAnchor).isActive = true 
} 

Antwort

2

Sie benötigen eine Höhenbeschränkung auf Ihren Separator hinzuzufügen, oder sonst wird es auf eine Höhe von Null erhält zerquetscht nach unten, weshalb man es nicht sehen kann. Fügen Sie Ihrer setupSeparator Methode so etwas wie dem folgenden hinzu:

separator!.heightAnchor.constraint(equalToConstant: 1).isActive = true 
Verwandte Themen