如何从适配器获取List size()并从Recycler Adapter本身更新Activity UI? [英] How to get the List size() from adapter and update Activity UI from recycler Adapter itself?
本文介绍了如何从适配器获取List size()并从Recycler Adapter本身更新Activity UI?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的适配器呼叫中有一个删除按钮,当我按下删除按钮时,我想
I have a delete button in my adapter call and when i press the delete button i want to
1.从列表中删除值,然后
2.在主要活动中更新列表的大小
和. 尝试在我在此处 引用的界面上 ,但它不起作用,我很困惑.
and . Have tried using Interface where i referred here but it's not working and i am so confused.
任何人都可以为我提供最好的方法
So can any one provide me an best way
我的适配器代码:
@Override
public void onBindViewHolder(final AddLineItem_Adapter.ViewHolder holder, final int position) {
final AddLineItem_ListView addLineItem_listView = addLineItem_listViews.get(position);
holder.tv_OrderID.setText(addLineItem_listView.getItemID());
holder.tv_ProductName.setText(addLineItem_listView.getProductName());
holder.tv_Quantity.setText(addLineItem_listView.getQuantity());
holder.tv_UnitPrice.setText(addLineItem_listView.getUnitPrice());
holder.tv_TotalAmount.setText(addLineItem_listView.getTotalAmount());
holder.btn_Delete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
addLineItem_listViews.remove(position);
notifyDataSetChanged();
}
});
}
我想更新TextView中主要活动的addLineItem_listView
大小.
I want to update the addLineItem_listView
size on the main activity in TextView.
推荐答案
- 创建界面.
- 将其传递给适配器.
- 删除后调用界面函数(提供列表的大小)
创建界面
public interface ShowDeleted {
void showDeleted(int size);
}
在这样的活动中匿名初始化界面
ShowDeleted showDeleted = new ShowDeleted() {
@Override
public void showDeleted(int size) {
// show the changed list size or update UI
}
};
将界面传递给recyclerAdapter
YourAdapter youradpter = new YourAdpater(context,list,showDeleted );
像这样初始化recyclerAdapter的构造函数:-
public YourAdapter(Context context, YourList yourList, ShowDeleted
showDeleted)
{
}
holder.onClick执行此操作
holder.btn_Delete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
addLineItem_listViews.remove(position);
notifyDataSetChanged();
this.showDeleted.showDeleted(addLineItem_listViews.size());
}
});
这篇关于如何从适配器获取List size()并从Recycler Adapter本身更新Activity UI?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文