相关疑难解决方法(0)

使用Cards在RecyclerView上添加搜索过滤器?

我发现在过滤器上的解决方案ListView,并SearchViewRecyclerView单独的,但我想将它们结合起来.它甚至可能吗?

android filter searchview android-recyclerview

21
推荐指数
1
解决办法
3万
查看次数

Android - 将搜索过滤器实施到RecyclerView

我需要实现一个基于EditText我的搜索功能RecyclerView.键入时必须过滤列表.

这是代码:

DisplayAdapter.java这是适配器

public class DisplayAdapter extends RecyclerView.Adapter<DisplayAdapter.MyViewHolder>{
    private List<DataHolder> displayedList;
    public class MyViewHolder extends RecyclerView.ViewHolder{
        public TextView english_d;
        public MyViewHolder(View view){
              super(view);
              english_d = (TextView) view.findViewById(R.id.engword);
        }
   }
    public DisplayAdapter(List<DataHolder> displayedList){
        this.displayedList = displayedList;
      }

    @Override
    public MyViewHolder onCreateViewHolder(ViewGroup parent, int position)    {
    // create a layout
    View itemView = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_item, parent, false);

    return new  MyViewHolder(itemView);
}
@Override
public void onBindViewHolder(MyViewHolder holder, int position) {
    DataHolder content = displayedList.get(position);
    holder.english_d.setText(content.getEnglish());
   }
@Override
public int …
Run Code Online (Sandbox Code Playgroud)

search android filter android-adapter android-recyclerview

21
推荐指数
1
解决办法
5万
查看次数

如何避免可过滤适配器上的notifyDataSetChanged?

我正在提高应用程序的稳定性和性能,但现在我遇到了来自 Android Studio 的警告。请考虑以下 Adapter 类:

private class CoinsAdapter(private val fragment: CoinFragment, private val coins: List<Coin>): RecyclerView.Adapter<CoinsAdapter.ViewHolder>(), Filterable {

    private val filter = ArrayList(coins)

    override fun onCreateViewHolder(parent: ViewGroup, position: Int): ViewHolder {
        val binding = ItemCoinBinding.inflate(LayoutInflater.from(parent.context), parent, false)
        return ViewHolder(binding)
    }

    override fun onBindViewHolder(holder: ViewHolder, position: Int) {
        val coin = filter[position]
        
        holder.binding.coinImage.setImageResource(coin.image)
        holder.binding.coinText.text = builder.toString()
    }

    override fun getItemCount() = filter.size

    override fun getFilter() = object : Filter() {

        override fun performFiltering(constraint: CharSequence): FilterResults {
            if (constraint.length < 2) …
Run Code Online (Sandbox Code Playgroud)

android kotlin notifydatasetchanged android-filterable

7
推荐指数
1
解决办法
2558
查看次数

RecyclerView添加EmptyView

我正试图在我身上实施EmptyView,RecyclerView Adapter但我没有得到任何结果.

我已经按照本教程和这个提示,但没有人为我工作.

我实施了:

if (viewType == EMPTY_VIEW) {
    v = LayoutInflater.from(parent.getContext()).inflate(R.layout.empty_view, parent, false);
    EmptyViewHolder evh = new EmptyViewHolder(v);
    return evh;
}

v = LayoutInflater.from(parent.getContext()).inflate(R.layout.data_row, parent, false);
ViewHolder vh = new ViewHolder(v);
return vh;
Run Code Online (Sandbox Code Playgroud)

但它不允许我编译,因为它们是不同的ViewHolder,因为我创建了两个ViewHolder类,但他们extends Recycler.ViewHolder所以我没有得到它...

我正在尝试这样做,因为我有一个SearchView,我想要当列表为空它显示一个EmptyView,我已经得到它以编程方式做它但我更喜欢添加像一个layout因为我不知道那么多怎么样放置TextViews并以Buttons编程方式.

如果我放

return dataList.size() > 0 ? dataList.size() : 1;
Run Code Online (Sandbox Code Playgroud)

它给了我错误,因为索引是0.

我已经调试了viewType并且始终是1,那么它将不会加入if条件......

深入Android我发现了这个:

/** …
Run Code Online (Sandbox Code Playgroud)

android android-recyclerview

6
推荐指数
1
解决办法
1625
查看次数

如何在基于RecyclerView的Android应用程序上实现多重过滤?

目前,我已经开发了一个Activity使用RecyclerView搜索功能显示数据列表(如image_1所示).

我想在工具栏中添加过滤选项,类似于Youtube应用中的过滤器(请参阅image_2).任何人都可以给我提供易于实现的线索吗?UI设计和业务逻辑.

知道如何实现过滤器对话框窗口(见image_3)?我应该使用AlertDialog或者还有其他更好的选择吗?

IMAGE_1 IMAGE_2 IMAGE_3

android android-layout android-filter android-recyclerview

5
推荐指数
1
解决办法
4137
查看次数

Android SearchView自定义

我刚接触到android并且我被困在一些我认为很简单但我感到困惑的东西..我需要在动作栏/工具栏中但不是在我的Relativelayout中制作自定义searchView.问题是我不知道如何定制背景,textinput颜色,XML中的搜索图标颜色,或只是他们的属性.目前我在手机上,无法显示我的代码.有谁告诉我如何定制它?也许向我展示我可以遵循的任何教程?提前致谢 !!!!

android android-layout android-search

5
推荐指数
3
解决办法
2万
查看次数