Я хочу отправить информацию обратно в программу просмотра, чтобы обновить представление, но слушатель не работает.У меня есть это сообщение в компиляторе "ошибка: не удается найти слушателя символьной переменной"
DoneByDefault - класс, который отправляет данные обратно в просмотрщик
public class DoneByDefault extends AppCompatActivity {
…… ..
public interface onItemChange{
void notifyAdapter(int position,BatchObject payload);
}
private onItemChange listener;
public DoneByDefault(Context context){
this.listener=(SelectBatchStep)context;
}
public DoneByDefault(){
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_done_by_default);
xpayload=new BatchObject();
…….
btn_save.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
……
xpayload.setmStep_Answer(xanswer);
xpayload.setmStep_Comments(xcomments);
xpayload.setmStep_DoneBy(user_doneby);
xpayload.setmStep_Done_Date(dateString);
xpayload.setmStep_Id(stepid);
xpayload.setmbatch_No(batchnumber);
xpayload.setmStep_No(stepnumber);
xpayload.setmStep_Question_Type(stepquestiontype);
xpayload.setmStep_Question(stepquestion);
Error here: this.listener.notifyAdapter(xposition,xpayload);
finish();
}
});
}
SelectBatchStep - класс с утилизатором
public class SelectBatchStep extends AppCompatActivity implements DoneByDefault.onItemChange{
……
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_select_batch_step);
….
recyclerView=(RecyclerView) findViewById(R.id.recycler_view);
mLayoutManager=new LinearLayoutManager(getApplicationContext());
mAdapter=new SelectBatchStepAdapter(this, batchObjectList, rBatch_No, ruser, document_no);
recyclerView.setAdapter(mAdapter);
……
@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
……
@Override
public void notifyAdapter(int position,BatchObject payload){
batchObjectList.set(position,payload);
mAdapter.notifyItemChanged(position);
}