数字の前にドル記号を自動的に入力する編集テキストが必要です。 Androidのメーカー
例 $ 500
EDIT:編集テキストが使用されたとき(タップすると)
$の追加は行われるべきです。通貨はCADで計算されます。しかし、ドル記号は、フィールドが何であるかのためのリマインダとして機能します
数字の前にドル記号を自動的に入力する編集テキストが必要です。 Androidのメーカー
例 $ 500
EDIT:編集テキストが使用されたとき(タップすると)
$の追加は行われるべきです。通貨はCADで計算されます。しかし、ドル記号は、フィールドが何であるかのためのリマインダとして機能します
onChangeリスナを追加して、入力が完了した後に$を挿入するだけです。
private EditText yourEditText;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
yourEditText = (EditText) findViewById(R.id.yourEditTextId);
yourEditText.addTextChangedListener(new TextWatcher() {
@Override
public void afterTextChanged(Editable s) {
yourEditText.setText("$" + yourEditText.getText().toString());
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {}
});
}
'afterTextChanged'と他のすべてをオーバーライドする必要があります。 –
'if(yourEditText.getText()。toString()。startsWith(" $ "))return;'を追加して、テキストを変更するたびにコードが別の$記号を追加しないようにします。 – Thommy
editText.setText("$");
「$」記号が、これの欠点があらかじめ入力EDITTEXT、その後のEditTextのユーザータップは、そのユーザは、「$を削除することができている場合には"サイン。
この問題のもう1つの解決策は、editText left drawableを "$"または "$ image"に設定することです。ユーザーがsaveやsubmitなどのアクションをトリガーした後、editTextの前に "$"を追加します。
あなたの恐ろしいフォーマットのために私はdownvoted –
あなたは本当にCTRL + Kを押すのが怠惰ですか? –
この解決法はうまくいかず、 'editText'のテキストを$に設定すると、テキスト全体がそのテキストに置き換えられます。 –
何を試しましたか?この追加は、いつ入力を開始する前か、後に行う必要がありますか?何らかのタイプのラベルを使用するのではなく、テキストボックスに$を含めるのはなぜですか?デバイスから現地通貨を使用していますか、またはUSD(またはCADなど)を使用していますか? –
$の追加は、編集テキストが使用されたとき(タップされたとき)に行われます。通貨はCADで計算されます。しかしドル記号は、そのフィールドが何であるかを思い出させるものです。 – Dev