5 つの編集テキストに対して 5 つの addTextChangedListener があります。単一の関数でそれらをカスタマイズしたいので、editttext の ID を渡すだけで、addTextChangedListener がそれに適用されます。これで私。
コード
mobileNumber.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
mobileNumber.setError(null);
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
mobileNumber.setError(null);
}
});
mobileNumber2.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
mobileNumber2.setError(null);
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
mobileNumber2.setError(null);
}
});
mobileNumber1.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
mobileNumber1.setError(null);
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
mobileNumber1.setError(null);
}
});
すべての addTextChangedListener は、異なる id に対して同じことを行っています。これは、android で関数としてカスタマイズすることが可能であり、id を渡すだけで、addTextChangedListener が適用されます
提案するように
public class BookingClassAddListenerOnTextChange implements TextWatcher {
private Context mContext;
EditText mEdittextview;
public BookingClassAddListenerOnTextChange(Context context, EditText edittextview) {
super();
this.mContext = context;
this.mEdittextview= edittextview;
}
@Override
public void afterTextChanged(Editable arg0) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence arg0, int arg1, int arg2,
int arg3) {
// TODO Auto-generated method stub
}
@Override
public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {
// TODO Auto-generated method stub
}
public void addTextChangedListener(
BookingClassAddListenerOnTextChange bookingClassAddListenerOnTextChange) {
// TODO Auto-generated method stub
}
}