无法拒绝符号'position'

问题描述 投票:0回答:1

我正在编写一个适配器类,在其中获取位置显示错误:

onBindViewHolder中的“无法解析符号'位置'。”>

public class cat_adapter extends RecyclerView.Adapter<cat_adapter.Viewholder> {

private List<cat_model> cat_modelList;

public cat_adapter(List<cat_model> cat_modelList) {
    this.cat_modelList = cat_modelList;
}


@NonNull
@Override
public Viewholder onCreateViewHolder(@NonNull ViewGroup parent, int i) {
    View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.category,,false);
    return new Viewholder(view);
}

@Override
public void onBindViewHolder(@NonNull Viewholder holder, int i) {
    holder.setData(cat_modelList.get(position).getCategory();

}

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

class Viewholder extends RecyclerView.ViewHolder{

    private TextView title;

    public Viewholder(@NonNull View itemView) {
        super(itemView);

        title= itemView.findViewById(R.id.category);
    }

    private void setData(String title){
        this.title.setText(title);
    }
}


}

我正在编写一个适配器类,其中get位置显示错误:onBindViewHolder中的“无法解析符号'position'”。公共类cat_adapter扩展了RecyclerView.Adapter <...>] >>

java android-studio position android-adapter android-viewholder
1个回答
0
投票

更改这样的代码。它会工作。您必须将'position'替换为'i'。

@Override
public void onBindViewHolder(@NonNull Viewholder holder, int i) {
    holder.setData(cat_modelList.get(i).getCategory();

}

您必须传递从inB变量onBindViewHolder方法的第二个参数中获取的变量。]​​>

© www.soinside.com 2019 - 2024. All rights reserved.