第一次单击后TextWatcher没有调用

时间:2017-03-13 09:50:26

标签: android android-edittext android-recyclerview onclicklistener textwatcher

我的 RecyclerListView 里面有两个EditTexts 。在每个edittexts上我设置了OnClickListener,我在当前的EditText上设置了CustomTextWatcher。对于第一次单击方法OnClick工作。但是没有调用TextWatcher。 第二次点击一切正常。知道为什么会这样吗?

xml中的

       <EditText
           android:id="@+id/edit"
           android:layout_width="64dp"
           android:layout_height="wrap_content"
           android:clickable="true"
           android:focusableInTouchMode="false"/>
适配器中的

 @Override
public void onBindViewHolder(CardViewHolder viewHolder, final int position) {
...
holder.blocks.setOnClickListener(new MyEditTextClickListener());
... }

 private class MyEditTextClickListener implements View.OnClickListener {
 public MyEditTextClickListener() {}
 @Override
    public void onClick(View v) { switch (v.getId()) {
            case R.id.edit:
                callback.callback(EditText eT);
                break;
}}

在活动中:

 @Override
public void callback(final EditText eT) {
myTextWatcher = new MyTextWatcher(eT);
eT.addTextChangedListener(myTextWatcher);
}

public class MyTextWatcher implements TextWatcher {
EditText eT;
public MyTextWatcher(EditText eT) {
        this.eT = eT;
}

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

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

  @Override
    public void afterTextChanged(Editable s) {}

0 个答案:

没有答案