gpt4 book ai didi

android - 当我运行下面的代码时,我收到适配器错误,我尝试通过查看 yt 视频来解决它......仍然无法正常工作

转载 作者:行者123 更新时间:2023-12-04 08:36:10 28 4
gpt4 key购买 nike

当我运行下面的代码时,我遇到了适配器错误,我尝试通过观看 youtube 视频来解决它......仍然无法正常工作,它显示适配器是抽象的,所以错误就在那里。我在下面附上了它。请为这个问题提供最相关的解决方案。
这是我的 GridAdapter.java 代码

public class GridAdapter extends RecyclerView.Adapter<GridAdapter.ViewHolder> {

List<String>titles;
List<Integer>images;
LayoutInflater inflater;

public GridAdapter(Context context,List<String>titles,List<Integer>images){
this.titles = titles;
this.images = images;
this.inflater = LayoutInflater.from(context);
}


public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = inflater.inflate(R.layout.intoduction,parent,false);

return new ViewHolder(view);
}


public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
holder.titles.setText(titles.get(position));
holder.images.setImageResource(images.get(position));

}


public int getItemCount() {
return titles.size();
}

public class ViewHolder extends RecyclerView.ViewHolder{
TextView titles;
ImageView images;

public ViewHolder(@NonNull View itemView) {
super(itemView);
titles = itemView.findViewById(R.id.textView15);
images = itemView.findViewById(R.id.imageView4);
}
}
}
这是我的 MainActivity2.java 代码
public class MainActivity2 extends AppCompatActivity {
RecyclerView recycleview1;
List<String> titles;
List<Integer>images;
Adapter GridAdapter;

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.intropage);
recycleview1 = findViewById(R.id.recycleview1);

titles = new ArrayList<>();
images = new ArrayList<>();

titles.add("first item");
titles.add("second item");
titles.add("third item");
titles.add("fourth item");

images.add(R.drawable.bheeshma);
images.add(R.drawable.sadak2);
images.add(R.drawable.tanhaji);
images.add(R.drawable.thappad);

GridAdapter = **new Adapter(this,titles,images);**

GridLayoutManager gridLayoutManager = new
GridLayoutManager(this,2,GridLayoutManager.VERTICAL,false);
recycleview1.setLayoutManager(gridLayoutManager);
recycleview1.setAdapter(**GridAdapter**);




}



}
这是我得到的错误
Adapter is abstract; cannot be instantiated
GridAdapter = new Adapter(this,titles,images);

最佳答案

您使用类名作为变量名,并且您使用的适配器类型为 GridAdapter(不是适配器)。
在 MainActivity2 文件中进行这些更改。

GridAdapter adapter;
adapter=new GridAdapter(this,titles,images);
recycleview1.setAdapter(adapter);

关于android - 当我运行下面的代码时,我收到适配器错误,我尝试通过查看 yt 视频来解决它......仍然无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64791084/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com