我正在尝试使用自定义 CursorAdapter
(通过从 CursorAdapter
继承)覆盖 bindView(...)
和 newView(...)
此处建议( examplecursoradapter )。
但是,当与 AutoCompleteTextView
一起使用时,插入的自动完成值(即用户从下拉列表中选择值时输入的值)是 toString()
的 SqliteCursor
值。如何使用此方法获取下拉列表中的值?
最佳答案
您还需要为您的自定义 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关于android - 如何在 AutoCompleteTextView 中使用自定义 CursorAdapter?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13893977/