这是我的问题。
我在同一个Activity中有2个RecyclerViews。第一个(RecView1)有一个适配器(当然),第二个(RecView2)有不同的适配器。
我想:
我认为这是一件非常糟糕的事情:
RecView1适配器中的:
public LSAdapterBottom(List<ListaInfo> sList,List<ListaInfo> lSMain, LSActivity lSActivity) {
this.sList = sList;//list of the current adapter
this.lSMain = lSMain; //second list where I want to put the item here deleted
this.lSActivity = lSActivity; //activity which has the two recview
}
public void onBindViewHolder(LSViewBottomHolder cViewHolder, final int i) {
final Item item = sList.get(i);
cViewHolder.ics.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
lSMain.add(item);
lSActivity.notifyRitornoInLista(); //public method of the activity which simply calls the other adapter to invoke the notifyDataSetChanged() to update the other recview.
sList.remove(i);
notifyDataSetChanged();
}
});
我认为这是非常糟糕的解决方案,但它确实有效。我想知道更简洁的方法来达到相同的效果。 提前谢谢。