2017-08-04 84 views
0

我有一个RecyclerView,它将在最后一个项目视图中显示关闭图标 但是当我在适配器中添加新数据时 旧项目不刷新其视图,它只是添加RecyclerView中的新项目视图。如何刷新recyclerview特定项目视图

如何更新旧的最后一个项目视图?

我试图使用notifyItemChanged(int)但它没有工作。

for(int i = lastPosition(); i < mAdapter.getItemCount() - 1; i++) { 
    mAdapter.notifyItemChanged(i); 
} 
+0

你'更新一位置()'? – Ibrahim

+0

我已更新它... – NeilLin

+0

尝试在mAdapter.notifyDataSetChanged()后更换recyclerView适配器: recyclerView.swapAdapter(mAdapter,true); –

回答

0

感谢您的帮助,您可以拨打这个,我已经找到问题 问题是不是在适配器,它在我的看法 我的XML布局显示图标在默认,

当它是最后一个项目,我设置图标飘

public static void hideBottomLine(BaseViewHolder h) { 
    h.line.setVisibility(View.GONE); 
} 

当我notifyItemChanged它,我想它会显示默认的,但不是!所以,当我添加方法

public static void showLine(BaseViewHolder h) { 
    h.line.setVisibility(View.VISIBLE); 
} 

现在工作...

0

添加以下代码列表视图中添加项目后...

mAdapter.notifyDataSetChanged(); 
+0

它可以更新适配器数据,但它不会更新旧项目onbindviewholder ... – NeilLin

0

,每当你想更新recyclerview列表的项目

mAdapter.notifyItemChanged(ITEM_INDEX); 

//ITEM_INDEX IS THE POSITION 
+0

我已经在使用它... – NeilLin