Cannot resolve symbol ViewHolder

柔情痞子 提交于 2019-12-23 15:11:02

问题


I was trying to implement a recycler view. but i am not able to use viewHolder. Please find a solution. Thanks in advance


回答1:


Try to use just ViewHolder instead of RecyclerView.Adapter.ViewHolder:

@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    return null;
}

...

And make sure you have a ViewHolder class inside your adapter class:

public class ViewHolder extends RecyclerView.ViewHolder {
    public ViewHolder(View v) {
        super(v);
    }
}

Hope it helps.




回答2:


You can try this way hope so it will be helpful for you.

public class YourAdapter extends RecyclerView.Adapter<YourAdapter.MyViewHolder> {

            private List<String> myList;

            public class MyViewHolder extends RecyclerView.ViewHolder {
                public TextView title, year, genre;

                public MyViewHolder(View view) {
                    super(view);
                    title = (TextView) view.findViewById(R.id.title);
                    genre = (TextView) view.findViewById(R.id.genre);
                    year = (TextView) view.findViewById(R.id.year);
                }
            }


            public YourAdapter(List<String> list) {
                this.myList = list;
            }

            @Override
            public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
                View itemView = LayoutInflater.from(parent.getContext())
                        .inflate(R.layout.list_row, parent, false);

                return new MyViewHolder(itemView);
            }

            @Override
            public void onBindViewHolder(MyViewHolder holder, int position) {
                Movie movie = myList.get(position);
                holder.title.setText(myList.get(position).getTitle());

            }

            @Override
            public int getItemCount() {
                return myList.size();
            }
        }



回答3:


You must create a new Class inside your Adapter Class like bellow :

public class viewHolder extends RecyclerView.ViewHolder {

    public TextView text;
    public ImageView imageView;


    public viewHolder(View v) {
        super(v);
        text = (TextView) v.findViewById(R.id.text);
        imageView = (ImageView) v.findViewById(R.id.icon);

    }
}


来源:https://stackoverflow.com/questions/47730309/cannot-resolve-symbol-viewholder

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!