My code: menu.xml
<item
xmln:id="@+id/search"
android:icon="@drawable/ic_search"
app:showAsAction="always"
android:title="seach"
app:actionViewClass="android.support.v7.widget.SearchView" >
Java:
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
MenuInflater inflater =getMenuInflater();
inflater.inflate(R.menu.menu,menu);
final MenuItem ourSearchItem = menu.findItem(R.id.search);
SearchView sv = (SearchView) ourSearchItem.getActionView();
sv.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
Toast.makeText(getApplicationContext(), query, Toast.LENGTH_LONG).show();
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
return false;
}
});
return super.onCreateOptionsMenu(menu);
}
I get this error:
PID: 31846 java.lang.NullPointerException: Attempt to invoke interface method 'android.view.View android.view.MenuItem.getActionView()' on a null object reference