Input-mask-ios: Holen Sie sich die Original-Saite

Erstellt am 27. Sept. 2017  ·  6Kommentare  ·  Quelle: RedMadRobot/input-mask-ios

Wie bekomme ich eine Original-Saite?
Zum Beispiel habe ich die Maske {(123)}-[000] und der Textfeldtext ist "(123)456, ich möchte erhalten, was genau der Benutzer eingibt, in diesem Fall - 456.

question

Alle 6 Kommentare

Hey @beltik
Danke für deine Frage.

MaskedTextFieldDelegate hat einen Listener mit einer Callback-Methode textField(_:didFillMandatoryCharacters:didExtractValue:) , wobei der «extrahierte Wert» eine gesuchte Variable ist. Einzelheiten zur Implementierung finden Sie im Abschnitt Verwendung .

Vielen Dank.
Ich möchte auch die Möglichkeit haben, der Benutzereingabe ein beliebiges Zeichen oder eine Ziffer oder ein beliebiges Symbol hinzuzufügen.
Derzeit ziehe ich dafür die Bibliothek auf mein Objekt und ändere sie.
Der Grund ist, ich brauchte Symbole wie ".%@?" etc.

@beltik ,

Ich bin mir nicht sicher, ob ich Sie richtig verstanden habe, aber es gibt eine Funktionsanfrage zu Sonderzeichen, und die aktuelle Arbeit ist im Gange.

Ps Außerdem erhalten Sie entsprechend Ihrem Maskenformat für {(123)}-[000] einen resultierenden Wert wie (123)000 , mit dem Präfix (123) .

Um es wegzulassen, sollten Sie ein Format wie (123)-[000] .

@taflanidi

Wenn ich eine Maske wie [-] oder [_] habe, kann ich nur Buchstaben oder Zahlen eingeben, aber was ist mit Symbolen wie einem Punkt? Derzeit kann ich keine Punkte und andere Symbole in das Feld eingeben.

Um diese Fähigkeit hinzuzufügen, habe ich die Bibliothek aus den Pods in das Projekt gezogen und geändert. Es gibt eine Methode, die nur einen bestimmten Zeichensatz zurückgibt, der von der Aufzählung abhängt. Ich kommentiere es einfach und gebe YES zurück (weil es meinen Bedürfnissen entspricht). Aber die bessere Lösung ist, etwas wie ["specific-key"] hinzuzufügen, mit dem alle Symbole bearbeitet werden können.

Lassen Sie mich versuchen, es noch einmal zu erklären. Ich benötige die Möglichkeit, Symbole wie "," oder "." hinzuzufügen.
Dafür habe ich die Bibliothek in mein Projekt kopiert und in der Klasse ValueState in func func akzeptiert (character char: Character) -> Bool {
Ich habe den Code durch folgenden ersetzt:
Fall .AlphaNumerisch:
// Rückgabe von CharacterSet.alphanumerics.isMember(Zeichen: Zeichen)
true zurückgeben

Aber natürlich würde ich es vorziehen, zusätzliche Groß-/Kleinschreibung hinzuzufügen, wie case .everyCharacter. Und diese Funktion, die ich anfordere (oder vielleicht gibt es einen einfacheren Weg, aber ich habe sie nicht gefunden).
Hoffe ich drücke mich klar aus.

Implementiert in 3.3.0 .

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

caioremedio picture caioremedio  ·  6Kommentare

osterlind picture osterlind  ·  3Kommentare

KompoD picture KompoD  ·  5Kommentare

Robuske picture Robuske  ·  4Kommentare

MrJox picture MrJox  ·  11Kommentare