我的 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) {}