我再次回到我面前,再次面对Android中的实现问题。
就是这样,我在一个Activity中有一个片段,它在Fragment中显示一个填充的RecyclerView。然而,Activity在其中,有一个SearchView。
现在,我想要的是根据活动中存在的SearchView中键入的文本,过滤片段中存在的RecyclerView中的列表。
我的想法是如何实现这个?
回调实现?如果是这样,怎么样?如果别的什么,怎么??
专家!我陷入困境。请让我知道如何克服这个障碍。
指望你们!等待您的积极和详细的回应。谢谢!
答案 0 :(得分:0)
您可以看到我对搜索Mediateka
的实现答案 1 :(得分:0)
在片段中写一个函数说
public void setSearchQuery(String query){
if(TextUtils.isEmpty(query)){
yourAdapterItems=originalAdapterItems;
nnotifyDataSetChanged();
}else{
copyOfAdapterItems=originalAdapterItems;
yourAdapterItems=filter(copyOfAdapterItems,query);
notifyDataSetChanged();
}
}
现在在过滤器功能中,实现过滤器的逻辑
在searchView和
上添加textWatchervoid onTextChanged(...String query)
{
yourFragmentObjectReference.setSearchQuery(query);
}
答案 2 :(得分:0)
我在活动中创建了另一个recyclerview,在其适配器中我实现了filterable,然后将完全相同的数据传递给它的适配器,就像在片段的适配器中一样。它对我有用。