我正在尝试使用自定义CursorAdapter
(继承自CursorAdapter
)覆盖bindView(...)
和newView(...)
,如此处所建议的那样(examplecursoradapter)。< / p>
但是,当使用AutoCompleteTextView
时,插入的自动完成值(即用户从下拉列表中选择值时输入的值)是toString()
的{{1}}值{1}}。如何使用此方法在下拉列表中获取值?
答案 0 :(得分:7)
您还需要为自定义CursorAdapter定义convertToString(Cursor)
方法。
例如:
public static class YourAdapter extends CursorAdapter implements Filterable{
//bindView(), newView() etc...
@Override
public String convertToString(Cursor cursor) {
//returns string inserted into textview after item from drop-down list is selected.
return cursor.getString(cursor.getColumnIndexOrThrow(NAME_OF_COLUMN_DISPLAYED_IN_DROP_DOWN));
}
}
您还可以查看ApiDemos中的示例(来自<android-sdk-dir>\samples\android-15\ApiDemos\src\com\example\android\apis\view
的文件AutoComplete4.java和AutoComplete5.java