ユーザーが終了した後、EditText ボックスの内容を変更したいと考えています。たとえば、ユーザーが 50126057 などの数字の行を入力した場合、ユーザーがアプリケーションの送信ボタンをクリックする前または後に、いくつかの文字を追加する必要があります。PC 上のアプリケーションがそれを理解できるように、scn|50126057{) のようにする必要があります。とにかくこれを行うことができますか?
ありがとう、どんな助けでも大歓迎です
PS スペル/文法について申し訳ありません
EditText word = (EditText) findViewById(R.id.username);
// ボタン クリック イベント内
// 編集テキストに入力された単語を文字列変数 (この場合は 'wordtoformat') に割り当てます
String wordtoformat=word.getText().toString();
//必要に応じて単語をフォーマットします
wordtoformat="scn|"+wordtoformat+"{)";
//フォーマットされた文字列を編集テキストに割り当てます
word.setText(text);
それがうまくいったことを願っています
次のような OnFocus リスナーを使用できます。
EditText et = (EditText)findViewById(*editText id*);
et.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if(!hasFocus) {
String text = et.getText().ToString();
String newText = "scn|"+text+"{)";
et.setText(newText);
}
});
私が 100% 正確でない場合は申し訳ありませんが、私はここに Android IDE がありません:)
それがあなたを助けることを願っています!
PS: ユーザーが EditText のフォーカスを失ってからボタンをクリックした場合、またはボタンをクリックしてもユーザーがアクティビティを離れない場合にのみ、変更されたテキストが表示されます。しかし、テキストを変更する目的では、うまくいくはずです。
ボタンイベントをクリックしている間、
btn.setOnClickListener(new onClickListener(){
public void onClick(View v){
String data="scn|"+edt.getText().toString()+"{)";
}
});