我有RecyclerView
(ListView
)。每个列表项(行)都有上传/下载按钮。当用户按下按钮时,它必须从亚马逊上传或下载文件。来自回收商视图列表项的异步呼叫
上传或下载过程正在使用Kotlin Fuel
框架完成。 Fuel是一个异步框架。一旦上传或下载过程完成,我就写了一个回调来访问RecyclerView
适配器。现在,我必须改变按钮(例如,如果按钮是上传的,在用户点击之后,它必须上传,一旦上传完成,它应该将其改变为下载按钮)。一旦调用回调方法,我搜索列表(我传递给列表视图)以查找RecyclerView
中列表项的位置。
但我不知道如何弄清View Holder
更新按钮从上传到下载或下载上传。我尝试过,一旦识别该行,就致电notifyDataSetChanged
。但它的行为如此不同,以至于RecyclerView
的第一页。它在notifyDataSetChanged
之后根本不显示上传/下载按钮。
我应该打电话notifyItemChanged(position)
,以便它调用bindViewHolder()
其中有逻辑显示下载按钮,如果文件不存在,否则上传按钮。
还有没有其他更好的方法来做到这一点。我在单独的文件中定义了FUEL调用以实现可重用性。
当然会尝试它,并接受答案,一旦它的工作.. – User