0

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

Thomas Vangelooven
  • 1,679
  • 2
  • 12
  • 18

0 Answers0