从ListView Adapter删除argument错误

public class BusinessAdapter extends ArrayAdapter<String[]> {
    private final Context context;
    String[] dataList;

    public BusinessAdapter(Context context,  String[] dataList) {
        super(context, R.layout.business_row,dataList);
        this.context = context;
        this.dataList = dataList;
    }

在 super 类中获得错误,说要必须删除 argument 中的 dataList 。现在我使用相同的代码来创建 ListView adapters,没有任何问题。那是有什么问题呢?

该回答引用ChatGPT-3.5

从您提供的代码中看不出任何明显的错误,因此可能需要更多信息才能确定问题所在。您提到该错误发生在调用super()方法时,这意味着问题可能与该方法的参数有关。


根据您提供的代码,您的BusinessAdapter类是一个ArrayAdapter的子类,这意味着您应该调用父类的构造函数来初始化适配器。ArrayAdapter的构造函数需要至少两个参数:上下文和数据列表。您已经传递了正确的上下文参数,但是在您调用父类的构造函数时,将dataList参数传递给了它,这可能是导致错误的原因。


super(context, R.layout.business_row, dataList);中的dataList应该是一个包含数据的列表,而不是一个字符串数组。如果您的dataList是一个字符串数组,则应该将其转换为列表,例如:

List<String> dataListList = Arrays.asList(dataList);
super(context, R.layout.business_row, dataListList);

如果您已经将dataList转换为列表并且仍然遇到错误,则可能需要提供完整的错误消息和堆栈跟踪以获得更多帮助。