-4

レイアウトに 2 つの edittext フィールドがあります。edittext1に何かを入力すると、同じテキストがedittext2に動的に入力され、その逆も同様です。どうやってやるの??

4

2 に答える 2

3

次のように、両方の Edittext にTextWatcherを追加します。

    EditText myTextBox = (EditText) findViewById(R.id.myTextBox);
EditText myOutputBox = (EditText) findViewById(R.id.myOutputBox);
      myTextBox.addTextChangedListener(new TextWatcher() {

       public void afterTextChanged(Editable s) {
       }

       public void beforeTextChanged(CharSequence s, int start, 
         int count, int after) {
       }

       public void onTextChanged(CharSequence s, int start, 
         int before, int count) {
       myOutputBox.setText(s);
       }
      });

他の Edittext についても同様です。

 myOutputBox.addTextChangedListener(new TextWatcher() {

           public void afterTextChanged(Editable s) {
           }

           public void beforeTextChanged(CharSequence s, int start, 
             int count, int after) {
           }

           public void onTextChanged(CharSequence s, int start, 
             int before, int count) {
           myTextBox.setText(s);
           }
          });
于 2013-10-14T07:39:58.803 に答える
1

EditText#addTextChangedListenerを見てください。必要なのは、必要なEditText内部afterTextChangedメソッドを更新することだけです。

于 2013-10-14T07:34:35.083 に答える