【发布时间】:2011-10-27 06:10:22
【问题描述】:
我在使用 Android 自动完成下拉菜单时遇到问题。我正在尝试将自定义对象传递给新的 ArrayAdapter,然后将其用于下拉菜单中的数据。但是,这行代码出现以下错误:
adapter = new ArrayAdapter<String>(_context, R.layout.list_item, list_items);
The constructor ArrayAdapter<String>(Context, int, DropdownItemData[]) is undefined
我也尝试过运行它,它会输出类型不匹配错误:
adapter = new ArrayAdapter<DropdownItemData>(_context, R.layout.list_item, list_items);
Type mismatch: cannot convert from ArrayAdapter<DropdownItemData> to ArrayAdapter<String>
但是,以下确实可以正常工作:
String[] test_list = new String[] {"some", "test", "data"};
adapter = new ArrayAdapter<String>(_context, R.layout.list_item, test_list);
我的 DropdownItemData 类覆盖了 Object toString() 方法,正如此处的 ArrayList 文档中所建议的那样:
http://developer.android.com/reference/android/widget/ArrayAdapter.html
有谁知道问题是什么/我错过了什么?根据文档,我尝试用于 ArrayList 的构造函数应该只是采用一个通用列表——所以我不明白错误在抱怨什么。
【问题讨论】:
标签: java android autocomplete arraylist