如何定义Recycler.Adapter的子类<vh extends =“”recylerview.viewholder =“”>

时间:2015-09-16 13:35:09

标签: java android android-recyclerview recycler-adapter

我需要定义一个自定义的RecyclerView和RecyclerView.Adapter。 RecyclerView没问题,但我不知道如何定义RecyclerView.Adapter的子类,因为它是Generic类型。

这是我的代码,Android Studio显示意外绑定

# Add your own tasks in files placed in lib/tasks ending in .rake,
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.

require File.expand_path('../config/application', __FILE__)

AppName::Application.load_tasks

1 个答案:

答案 0 :(得分:14)

您应该像这样定义

public static abstract class Adapter<VH extends RecyclerView.ViewHolder> extends RecyclerView.Adapter<VH> {
}

结构就像这样

ABC类&lt; -definition - &gt;扩展DEF&lt; -usage - &gt;

这是因为定义必须在您声明的类之后引用。在第二个引用中,您只能使用它。

整个语句的含义是VH被定义为RecyclerView.ViewHolder的子类,而Adapter<VH>RecyclerView.Adapter<VH>的子类。因为VH具有正确的超类,所以整个语句现在都是有效的。