Kurz gesagt, ich möchte eine @IBInspectable
-Eigenschaft erstellen, mit der Sie aus einer Liste von Dingen in einem Dropdown-Menü auswählen können, wenn Sie in Storyboards sind. Auch wenn es eine Möglichkeit gibt, Teiler zu erstellen und die IBInspectables
besser zu organisieren, würde ich gerne wissen, ob das auch möglich ist. In meinem Beispiel möchte ich Regex-Strings für eine Telefonnummer erstellen, sodass ich, wenn ich zum Storyboard gehe, einfach die "Telefonnummer" in einem Dropdown-Menü auswählen kann, anstatt eine Regex-Zeichenfolge einzugeben.IBInspectable Erstellen eines Dropdown-Menüs und bessere Organisation
Zur Zeit habe ich eine TextField
subclassed, so dass ich noch mehr IBInspectables
hinzufügen kann wie Regex (die Sie auf dem Bild sehen können). So wie es steht das ist, was ich für meinen subclassed UITextField
:
@IBDesignable public class FRM_TextField: UITextField {
@IBInspectable public var regex : String?
public var isValid : Bool{
if let unwrappedRegex = regex{
let applied_regex_expression = NSRegularExpression.regularExpressionWithPattern(unwrappedRegex, options: nil, error: nil)
let numberOfMatches = applied_regex_expression?.numberOfMatchesInString(text, options: nil, range: NSMakeRange(0, countElements(text)))
if(numberOfMatches > 0){
return true
}else{
return false
}
}
return false
}
public required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
public override init(){
super.init();
}
public override init(frame: CGRect) {
super.init(frame: frame)
}
}
Für Menschen hier später kommen, könnte man improvisiert/mit ein paar BOOL Eigenschaften machen zu tun, dass der Benutzer ein- und ausschalten kann. Es ist nicht ideal, aber es ist eine Option. – hhanesand
@Jordan Hochstetler +1 für deine Frage hast du die Lösung dafür? – Rakesh