-1

我正在设置文本,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) {}
   }
4

2 回答 2

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());
   }
}
于 2016-02-19T12:36:24.787 回答
0

用这个替换日志

Log.d("text is","" + new String(s.toString()));
于 2016-02-19T12:38:46.233 回答