我正在尝试使用自定义CursorAdapter
(通过继承 from CursorAdapter
)覆盖bindView(...)
并newView(...)
按照此处的建议(examplecursoradapter)。
但是,当与 一起使用时AutoCompleteTextView
,插入的自动完成值(即用户从下拉列表中选择值时输入的值)是 的toString()
值SqliteCursor
。如何使用此方法获取下拉列表中的值?
我正在尝试使用自定义CursorAdapter
(通过继承 from CursorAdapter
)覆盖bindView(...)
并newView(...)
按照此处的建议(examplecursoradapter)。
但是,当与 一起使用时AutoCompleteTextView
,插入的自动完成值(即用户从下拉列表中选择值时输入的值)是 的toString()
值SqliteCursor
。如何使用此方法获取下拉列表中的值?
您还需要convertToString(Cursor)
为您的自定义 CursorAdapter 定义方法。
例如:
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 中的示例(文件 AutoComplete4.java 和 AutoComplete5.java 来自<android-sdk-dir>\samples\android-15\ApiDemos\src\com\example\android\apis\view