今日RecyclerViewの問題は、のEditTextで使用されるアイテムに記録しました
私たちがアイテムに聞いて使用する場合は、スクロールがのEditTextで発見された後、多くの場合、混乱の中で、多重化されたデータ項目を、このようなデータ入力などいくつかの問題に遭遇、我々は彼が会ったときにさわやかな、データを格納するためのリスナーを追加頻繁に使用します。問題。あなたがのEditTextを削除する内容を設定するときに聞いていない場合はレスポンスコードの実行を監視します。データショーに影響を与えます。
私は、このような需要をやっているときに、あなたがafterTextChangedを使用することができない場合は、それは、私は、onTextChangedをリアルタイムでモニタを入力する必要がために時間使用されているので、ここでは、あります。ここでは、のEditTextがコンテンツを設定するときに応答します主にリスニングについてです。これは、リスナーを追加し、耳を傾け、そして内容を設定するためにコンテンツを設定する前に除去する必要があります。
onBindViewHolder中做如下操作
if(holder.et_num.getTag() instanceof TextWatcher){
holder.et_num.removeTextChangedListener((TextWatcher)holder.et_num.getTag());
}
if(StringUtils.isEmpty(moneyUsingDetailItem.getNum())){
holder.et_num.setText("");
}else{
holder.et_num.setText(moneyUsingDetailItem.getNum());
}
TextWatcher numWatcher = new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
//内容操作
}
@Override
public void afterTextChanged(Editable editable) {
}
};
holder.et_num.addTextChangedListener(numWatcher);
holder.et_num.setTag(numWatcher);
アイデアの交換が歓迎している場合