Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/225.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 无法继承和重写ArrayAdapter_Android_Android Studio - Fatal编程技术网

Android 无法继承和重写ArrayAdapter

Android 无法继承和重写ArrayAdapter,android,android-studio,Android,Android Studio,我正在尝试构建一个自定义ArrayAdapter,它覆盖默认ArrayAdapter的构造函数,如下所示: private class MyEndpointAdapter extends ArrayAdapter<Endpoint> { 我决定检查ArrayAdapter的声明,发现它导入的一些类无法解析 如何修复此问题?如果不显式提供构造函数,编译器将为您创建一个默认构造函数,它将调用超类的无参数构造函数 由于ArrayAdapter没有无参数构造函数,因此显然无法进行此调用,

我正在尝试构建一个自定义ArrayAdapter,它覆盖默认ArrayAdapter的构造函数,如下所示:

private class MyEndpointAdapter extends ArrayAdapter<Endpoint> {
我决定检查ArrayAdapter的声明,发现它导入的一些类无法解析


如何修复此问题?

如果不显式提供构造函数,编译器将为您创建一个默认构造函数,它将调用超类的无参数构造函数

由于
ArrayAdapter
没有无参数构造函数,因此显然无法进行此调用,因此出现错误

您需要明确定义从超类调用构造函数的构造函数,例如:

private class MyEndpointAdapter extends ArrayAdapter<Endpoint> {

    public MyEndpointAdapter(Context context, @LayoutRes int resource, List<Endpoint> objects) {
        super(context, resource, objects);
    }
}
私有类MyEndpointAdapter扩展了ArrayAdapter{
公共MyEndpointAdapter(上下文上下文、@LayoutRes int资源、列表对象){
超级(上下文、资源、对象);
}
}

成功了,谢谢!
private class MyEndpointAdapter extends ArrayAdapter<Endpoint> {

    public MyEndpointAdapter(Context context, @LayoutRes int resource, List<Endpoint> objects) {
        super(context, resource, objects);
    }
}