我正在尝试搜索自定义列表视图,但是我遇到了NullPointerException的问题
在line76中有一个错误,logcat:
java.lang.NullPointerException
at com.aeu.mlibrary.mlibraryaeu.SearchFragment.onCreateOptionsMenu(SearchFragment.java:76)
当我在第76行检查时,这是代码:
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.activity_main_actions, menu);
MenuItem myActionMenuItem = menu.findItem( R.id.item_search);
final SearchView searchView = (SearchView) myActionMenuItem.getActionView();
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
if (TextUtils.isEmpty(newText)) {
adapter.filter("");
lvSearch.clearTextFilter();
} else {
adapter.filter(newText);
}
return true;
}
});
super.onCreateOptionsMenu(menu, inflater);
}
第76行是:
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
这是我的menu.xml:
<item android:id="@+id/itemSearch"
android:actionViewClass="android.widget.SearchView"
android:icon="@mipmap/ic_search_white_48dp"
android:title="@string/action_search"
app:showAsAction="ifRoom" />
我需要你的帮助!
答案 0 :(得分:0)
SearchView searchView = (SearchView) menu.findItem(R.id.itemSearch);
这本身就可以获得searchView对象。我认为getActionView()是空指针异常的原因。