数値のパスワード フィールドである必要がある EditText フィールドがあります。ポートレートモードではすべて問題なく動作します。風景ではありません。ユーザーが EditText フィールドを選択すると、UI がフィールドにズームインし、入力するとすべての文字が表示されます。
数字キーボードも必要です。入力タイプを text password|number に設定してみました。「番号」オプションを削除すると、すべてが正常に機能します。そうでなければいいえ。
助言がありますか?
数値のパスワード フィールドである必要がある EditText フィールドがあります。ポートレートモードではすべて問題なく動作します。風景ではありません。ユーザーが EditText フィールドを選択すると、UI がフィールドにズームインし、入力するとすべての文字が表示されます。
数字キーボードも必要です。入力タイプを text password|number に設定してみました。「番号」オプションを削除すると、すべてが正常に機能します。そうでなければいいえ。
助言がありますか?
この問題は deprecated を使用しなくても解決できますandroid:password
。次のコード スニペットを使用しますが、呼び出しの順序を逆にしないでください。
EditText editText = (EditText) findViewById(R.id.MyEditText);
editText.setInputType(InputType.TYPE_CLASS_NUMBER);
editText.setTransformationMethod(PasswordTransformationMethod.getInstance());
非表示にする必要がある数値テキスト エントリ (パスワード スタイル) に対して私が見つけた最も簡単な解決策は、次を使用することでした。android:inputType="numberPassword"
私のために働いた完全な例:
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/MyLargeTextBox"
android:background="@android:drawable/editbox_background_normal"
android:id="@+id/txtWebServicePIN"
android:layout_row="3"
android:layout_column="2"
android:layout_columnSpan="2"
android:minWidth="100dp"
android:maxWidth="100dp"
android:inputType="numberPassword"
android:maxLength="6"/>
パスワードがランドスケープモードのフルスクリーンエディターに表示される問題を修正するには(マーカスが説明したように)、次の行を追加してフルスクリーンエディターを無効にします。
editText.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI);
テキストとパスワードの動作をより適切にエミュレートするために、書体をモノスペースに変更することもできます。
editText.setTypeface(Typeface.MONOSPACE);
これを XML で試してみてください。マニフェスト ファイルに変更はありません。
<EditText
android:id="@+id/etPassword"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:singleLine="true" />
*!!に変換されないヒント付きの入力パスワードの作り方です。
XML の場合:
android:inputType="textPassword"
android:gravity="center"
android:ellipsize="start"
android:hint="Input Password !."
mango と rjrjr の洞察に感謝します :D.
android:password="true"
と を使うべきだと思いますandroid:numeric="integer"
。ただし、Android のドキュメントに記載されているように (ドキュメントでR.attr.html
はなく でTextView
)、これらは非推奨であり、 を使用する必要がありますandroid:inputType
。inputType はフラグを取るため、複数の可能性を混在させることができます。そして、私android:inputType="number | password"
はあなたのために働くべきだと思います。
android:password="true"
古いデバイスもサポートするかどうかを指定する必要があります。