IP-Adresse eingeben - wie würdet Ihr das machen?

  • IP-Adresse eingeben - wie würdet Ihr das machen?

    Hallo!

    Ich möchte dem User die Möglichkeit geben, eine IP-Adresse (IPv4) einzugeben und überlege, wie ich das am geschicktesten machen sollte. Meine Ideen sind:

    1. Mit 4 Textfeldern und je max. 3 Zeichen numerischem Inhalt sowie festen Punkten dazwischen.
    2. Mit einem Textfeld, das entsprechend formatiert.

    Die erste Variante ist die einfachste und wahrscheinlich idiotensichere, aber ich finde die zweite elegante. Allerdings weiß ich nicht, wie ich das mit der Formatierung und Validierung (naja, OK, das geht schon mit einem regex) machen sollte.

    Wie würdet Ihr das machen?
  • Die Lösung mit einem formatierenden Textfeld funktioniert nur, wenn Du voraussetzt, dass der Nutzende immer 3 Ziffern pro Byte eingibt. Z. B. 127.000.000.001 anstatt 127.0.0.1. Woher soll Dein Programm sonst wissen, wo ein Byte zu Ende ist. Sieht aber meines Erachtens auch nicht schön aus.

    Wenn Du diesen Weg trotzdem gehen möchtest oder Du noch eine andere Autoformatierungsidee hast, kannst Du im Delegate auch textField:shouldChangeCharactersInRange:replacementString: implementieren und da Deinen Formatierungsalgorithmus reinpacken. Du kannst da aber auch nur einen Syntaxcheck einbauen, der bei Eingabefehlern den Text rot darstellt und den Submitknopf sperrt. Diese Variante finde ich am komfortabelsten.

    Eine weitere Möglichkeit ist ein UIPickerView mit vier Rädern. Es ist aber fraglich, ob das bedienungsfreundlicher ist.
    „Meine Komplikation hatte eine Komplikation.“
  • macmoonshine schrieb:

    Die Lösung mit einem formatierenden Textfeld funktioniert nur, wenn Du voraussetzt, dass der Nutzende immer 3 Ziffern pro Byte eingibt. Z. B. 127.000.000.001 anstatt 127.0.0.1. Woher soll Dein Programm sonst wissen, wo ein Byte zu Ende ist. Sieht aber meines Erachtens auch nicht schön aus.

    Ja, das stimmt.

    dasdom schrieb:

    Ich denke, ich wuerde eine Moeglichkeit waehlen, bei der der Nutzer die IP-Adresse auch reinkopieren kann.

    Auch ein Punkt.

    Ich denke, dass ich wirklich einfach ein Textfeld mache, wie Wolf vorgeschlagen hat.

    Allerdings hat der Hinweis von little_pixel auch seinen Reiz. Mal prüfen ...

    Danke!
  • Hier gibt es ein entsprechendes Textfeld, evtl. ist das was für Dich.

    s.sudre.free.fr/Software/DevPotPourri.html
    Xcode 4 sucks – „,Multiple exclamation marks‘, he went on, shaking his head, are a sure sign of a diseased mind.‘“ (Terry Pratchett 1992: Eric)

    "Wir ordnen und befehlen hiermit allen Ernstes, dass die Advocati wollene schwarze Mäntel, welche bis unter das Knie gehen, unserer Verordnung gemäß zu tragen haben, damit man die Spitzbuben schon von weitem erkennt." (Friedrich Wilhelm I., Soldatenkönig)