1

私は科学アプリを開発しており、入力数値を入力する必要がある EditText があるため、inputType は "number|numberSigned|numberDecimal" ですが、問題は "45.6" のような科学表記法を入力する場合です。 E05」、EditTextのInputTypeが原因で「E」の文字が入力できません。

EditTextがフォーカスされているときに「E」文字を許可し、数字キーボードのみを表示するにはどうすればよいですか?

4

1 に答える 1

3

余分な文字Eが付いた数字キーボードを表示する方法はありません。これを回避する2つの方法は、編集テキストに入力するボタンを作成するか、次のような属性Eを使用することです。android:digits

android:digits="1234567890E."

角かっこ内のすべての文字は、ユーザーが入力できるようにする文字です。

ボタンを使用してそれを行うにonClickListenerは、次のコードを入力するだけです

edittext.setText(edittext.getText().toString() + "E"

一方、カーソルの位置に文字を挿入したい場合は、これを試してみてください(ここから取得)

int start =edittext.getSelectionStart();
String s = "E";
edittext.getText().insert(start, s);
于 2012-11-29T22:16:37.857 に答える