-5

私はEditTextを持っています。EditText の setText() メソッドは、ボタンのクリック時に呼び出されます。ボタンのクリックが使用されているか、ユーザーが手動で場所を入力しているかを識別したい。私は TextWatcher を使用しました。ユーザーが手動で場所を入力した場合、および setText が使用された場合、 afterTextChange() が呼び出されます。

editext が手動で編集されている場合、またはプログラムで編集されている場合、シーンを特定することは可能ですか?

助けてください。

期待して感謝します。

4

3 に答える 3

0

Ahmad の提案に従って textwatcher を使用します。編集テキストでタイプを使用する場合は、わかります。

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

       public void onTextChanged(CharSequence s, int start, int before, int count) {
                 // s is the typed character sequence.   

       }

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


         }

         public void afterTextChanged(Editable s) {
         }
        });
于 2013-05-03T10:14:33.253 に答える
-2

カスタム EditText を記述して EditText を拡張し、setText() メソッドをオーバーライドできます。

@override
public void setText(CharSequence str) {
   super.setText(...);
   // to do you callback
}
于 2013-05-03T10:13:45.207 に答える