Frage

Wie erhalte ich ein EditText sowohl mit einem Telefoneingang und die Fähigkeit, die Zeichenfolge zu verbergen. Ich weiß, dass

android:inputType="textPassword"

verbirgt die Zeichenfolge, während

android:inputType="phone"

bringt eine Wähltastatur-Schnittstelle auf.

Wie die beide kombinieren?

War es hilfreich?

Lösung

android:password ist veraltet, aber AFAIK ist der einzige Weg, weil android:inputType="phone|textPassword" ignoriert ...

<EditText
    android:id="@+id/EditText01"
    android:layout_height="wrap_content"
    android:layout_width="fill_parent"
    android:password="true"
    android:inputType="phone" />

Andere Tipps

Ich glaube, das ist das, was Sie wollen?

android:inputType="numberPassword"

Edit:. Zum Zeitpunkt der Frage (2010) dies in der API nicht gewesen sein mag, aber für zeitgenössische Entwicklung, es ist verfügbar

Ich habe keine angemessene Lösung für dieses Problem gefunden. dtmilano die akzeptierte Lösung nicht vollständig funktionieren. Wenn die EditText im Querformat ausgerichtet ist, wo Sie die volle Bildschirmtastatur haben, zeigen die Zahlen noch im Klartext, nicht maskiert.

Ich verbrachte viel Zeit durch die eigentliche Textview-Code geht, und der Grund, warum dies ein Problem ist, ist, dass sie explizit die Input gegen InputType.TYPE_CLASS_TEXT werden überprüft und, wenn ich mich richtig, TYPE_MASK_CLASS wieder zu verwenden. Also, wenn Sie eine andere Input innerhalb dieser Grenzen sind (ich glaube, die Reichweite, die von TYPE_CLASS_TEXT und TYPE_MASK_CLASS das erste Byte), dann wird es nicht als Passwort erkannt wird, muss maskiert werden.

Ich weiß, was ich gesagt ziemlich verwirrend. Der eigentliche Code ist viel mehr verwirrend. Ich war ziemlich am Textview Code entsetzt ehrlich zu sein. Es ist ein Durcheinander, mit hart codierten Kontrollen überall. Horrible Codierung der Praxis, die zu Problemen wie dies führt.

Dieses Problem kann ohne die Verwendung von veralteten android:password gelöst werden. Siehe meine Antwort hier .

Ich habe nicht versucht, aber es könnte möglich sein, die beide wie so zu kombinieren:

android:inputType="textPassword|phone"

inputType können auf mehrere Werte annehmen .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top