从android

时间:2016-02-19 12:17:07

标签: android android-edittext android-textwatcher

我正在设置EditText中的文字,但是从TextWatcher获取文字时,它会显示空字符串。

请检查此代码

for (int i = 0; i < 4; i++) {
   et = new EditText(this);
   et.setText("hai");
   final EditText finalEt = et;
   ans.addView(et);
   final int finalI = i;
   finalEt.addTextChangedListener(new TextWatcher() {
       public void afterTextChanged(Editable s) {
           Log.d("text is",""+finalEt.getText().toString());
       }

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

       public void onTextChanged(CharSequence s, int start,int before, int count) {}
   }

2 个答案:

答案 0 :(得分:0)

您将在onTextChanged以及afterTextChanged这样的内容中获得此内容。

for (int i = 0; i < 4; i++) {
et = new EditText(this);
et.setText("hai");

final EditText finalEt = et;

ans.addView(et);
final int finalI = i;
finalEt.addTextChangedListener(new TextWatcher() {
   public void afterTextChanged(Editable s) {
                   String str = s.toString();
           Log.d("text is",""+s);

   }

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

   public void onTextChanged(CharSequence s, int start,int before, int count) {
           Log.d("text is",""+s.toString());
   }
}

答案 1 :(得分:0)

用此

替换日志
Log.d("text is","" + new String(s.toString()));