我已成功为AutoCompleteTextView实现了一个自定义SimpleCursorAdapter,它根据输入到框中的内容建议数据库中的条目。但是,我收到以下非致命错误:
performFiltering()期间发生异常!
显示java.lang.NullPointerException
在com.stev.LondonTaxi.Route.runQuery(Route.java:456)
at com.stev.LondonTaxi.AutocompleteAdapter.runQueryOnBackgroundThread(AutocompleteAdapter.java:61)
我的代码的相关摘录如下 - 我想知道是否有人可以放弃任何光线?
public class Route extends Activity implements View.OnClickListener,
AdapterView.OnItemClickListener, FilterQueryProvider {
from_adapt.setFilterQueryProvider(this);
public Cursor runQuery(CharSequence constraint) {
String filter = constraint.toString().toUpperCase() + "%'";
Cursor all_Cursor_filter = dbse.autocomplete_query(filter);
return all_Cursor_filter;
}
public class AutocompleteAdapter extends SimpleCursorAdapter implements Filterable {
public Cursor runQueryOnBackgroundThread(CharSequence constraint) {
if (getFilterQueryProvider() != null)
{ return getFilterQueryProvider().runQuery(constraint); }
return dbAdapt.autocomplete_query();
}
史蒂夫
答案 0 :(得分:1)
constraint
或dbse
为空。不确定第456行是哪一个。
但尝试在constraint
调用之前检查toString
是否为null。