Java 即使在新项目中,也无法在几个小时后将RecyclerView.Adapter扩展到

Java 即使在新项目中,也无法在几个小时后将RecyclerView.Adapter扩展到,java,android,android-recyclerview,Java,Android,Android Recyclerview,我正在尝试扩展RecyclerView.Adapter但无法像RecyclerView.Adapter那样扩展它。我不知道几个小时后发生了什么,我无法扩展适配器,但在我尝试创建新项目并扩展它之前,我就已经扩展了,但它似乎没有给我扩展的选择。 谢谢你的帮助 这是我的身材 apply plugin: 'com.android.application' android { compileSdkVersion 27 defaultConfig { application

我正在尝试扩展
RecyclerView.Adapter
但无法像
RecyclerView.Adapter
那样扩展它。我不知道几个小时后发生了什么,我无法扩展适配器,但在我尝试创建新项目并扩展它之前,我就已经扩展了,但它似乎没有给我扩展的选择。 谢谢你的帮助

这是我的身材

apply plugin: 'com.android.application'

android {
    compileSdkVersion 27
    defaultConfig {
        applicationId "sensors.device.divicetest"
        minSdkVersion 16
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"


    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }


}

dependencies {

    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.android.support.constraint:constraint-layout:1.1.2'
    implementation 'com.android.support:support-v4:27.1.1'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    implementation 'com.android.support:design:27.1.1'
    implementation 'com.android.support:cardview-v7:27.1.1'
    implementation 'com.android.support:recyclerview-v7:27.1.1'
    implementation 'me.itangqi.waveloadingview:library:0.3.5'
    implementation 'com.github.lzyzsd:circleprogress:1.2.1'
    implementation 'com.appolica:flubber:1.0.1'
    implementation 'com.github.nisrulz:easydeviceinfo:2.4.1'


}

正如sHOLE所说,适配器中没有
ViewHolder
类。您可以执行以下操作:

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

       public static class ViewHolder extends RecyclerView.ViewHolder {
           public ViewHolder(View v) {
           // initiate your views
           }
       } 

       @Override
       public FileListAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {

           View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.single_item_layout, parent, false);

           ViewHolder vh = new ViewHolder(v);

           return vh;
       }  


 }
公共类FileListAdapter扩展了RecyclerView.Adapter{
公共静态类ViewHolder扩展了RecyclerView.ViewHolder{
公共视图持有者(视图v){
//提出你的观点
}
} 
@凌驾
public FileListAdapter.ViewHolder onCreateViewHolder(ViewGroup父级,int-viewType){
视图v=LayoutInflater.from(parent.getContext()).flate(R.layout.single\u item\u布局,parent,false);
视窗支架vh=新视窗支架(v);
返回vh;
}  
}

我忘记的是,添加AdapterViewHolder,它扩展了RecyclerView.ViewHolder

感谢@sHOLE 首先我必须加上这个

public class FileListAdapterViewHolder extends RecyclerView.ViewHolder{
        public FileListAdapterViewHolder(View itemView) {
            super(itemView);
        }
    }
然后延伸到

public class FileListAdapter extends RecyclerView.Adapter<FileListAdapter.FileListAdapterViewHolder> {

    public class FileListAdapterViewHolder extends RecyclerView.ViewHolder{
        public FileListAdapterViewHolder(View itemView) {
            super(itemView);
        }
    }
}
公共类FileListAdapter扩展了RecyclerView.Adapter{
公共类FileListAdapterViewHolder扩展了RecyclerView.ViewHolder{
公共文件列表AdapterWilder(查看项目视图){
超级(项目视图);
}
}
}

这里的问题是,您在扩展的
ViewHolder
部分中指定了FileListAdapter,因此它将在适配器类中搜索ViewHolder(您还没有这样做)


理想情况下,在实现适配器类时,您应该首先将该类扩展为
RecyclerView.Adapter
,一旦实现了自己的ViewHolder类,在每次提到
RecyclerView.ViewHolder

时都将其替换掉。您会遇到什么错误?package sensors.device.divicetest.adapters;导入android.support.v7.widget.RecyclerView;公共类FileListAdapter扩展了RecyclerView.Adapter{}我附加了一个屏幕截图,请看一看这是RecyclerView.Adapter之后的情况。这是因为FileListAdapter中没有ViewHolder类(您应该自己实现)。从下次开始。扩展RecyclerView.Adapter,并在实现ViewHolder类后将其替换。感谢man@sHOLE,就像我忘了这么做一样,我在这里和那里漫游以使其正确。。你可以在Add ans中创建这个,这样我就可以使你的ans正确。