내 안드로이드 코드에서 나는 editingtext를 recyclerview에 넣고 TextWatcher를 사용하여 입력 한 값을 저장해야했습니다. 그 목적을 위해 여기에 제안 된대로 사용자 정의 TextWatcher를 사용했습니다.안드로이드 어떻게 재사용 클래스를 일반화 할 수 있습니다
private class MyCustomEditTextListener implements TextWatcher {
int position;
public void updatePosition(int position)
{
this.position=position;
}
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i2,
int i3) {}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i2,
int i3) {}
@Override
public void afterTextChanged(Editable editable) {}}
updatePosition은 .. onBindViewHolder에서 호출되고 난 afterTextChanged에서 데이터 모델에 글고 내용을 저장합니다.
내 상황은 MyCustomEditTextListener를 내부 클래스로 사용하고 있습니다. 그러나 여러 활동에서 동일한 사용 논리가 필요합니다. 어떻게 모든 재활용 어댑터에서 복제하지 않아도되도록 클래스를 다시 작성할 수 있습니까? 다음과 같은 뭔가 사용 afterTextChanged() 메소드
modelList.get (위치) .setQuantity (editable.toString());
여기서 modelList는 'Model'개체의 ArrayList입니다. 하지만 내 문제는 각 어댑터에서 Model 클래스가 다르다는 것입니다.
[codereview.se] – Jens