2

I am trying to reset my ListView after hitting the back button on the searchView. However, my app crashes as it opens. The line below /***/ is where it crashes in debug mode. I also posted the stack trace below.

I even do what the stacktrace tells me to do, replace the line with MenuItemCompat.setOnActionExpandListener() however it android studio says its deprecated and I get the same stack trace.

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.add_search_menu, menu);

    SearchManager searchManager =
            (SearchManager) getSystemService(Context.SEARCH_SERVICE);
    SearchView searchView =
            (SearchView) menu.findItem(R.id.action_search).getActionView();
    searchView.setSearchableInfo(searchManager
            .getSearchableInfo(getComponentName()));


    searchView.setIconifiedByDefault(false);
    MenuItem searchItem = menu.findItem(R.id.action_search);
    /****************************************************************************/
    searchItem.setOnActionExpandListener(new MenuItem.OnActionExpandListener() {

        @Override
        public boolean onMenuItemActionExpand(MenuItem item)
        {
            return true;
        }

        @Override
        public boolean onMenuItemActionCollapse(MenuItem item) {
            listView.setAdapter(new ArrayAdapter<String>(Food.this, R.layout.food_list, foodNames));
            searchListStartPos=0;
            return true;
        }
    });


    return super.onCreateOptionsMenu(menu);
}

Stack trace:

FATAL EXCEPTION: main Process: firstdynamic.iberacha, PID: 8520 java.lang.UnsupportedOperationException: This is not supported, use MenuItemCompat.setOnActionExpandListener()
at android.support.v7.view.menu.MenuItemImpl.setOnActionExpandListener(MenuItemImpl.java:745)
at firstdynamic.iberacha.Food.onCreateOptionsMenu(Food.java:87)
at android.app.Activity.onCreatePanelMenu(Activity.java:3373)
at android.support.v4.app.FragmentActivity.onCreatePanelMenu(FragmentActivity.java:320)
at android.support.v7.view.WindowCallbackWrapper.onCreatePanelMenu(WindowCallbackWrapper.java:95)
at android.support.v7.app.AppCompatDelegateImplBase$AppCompatWindowCallbackBase.onCreatePanelMenu(AppCompatDelegateImplBase.java:333)
at android.support.v7.view.WindowCallbackWrapper.onCreatePanelMenu(WindowCallbackWrapper.java:95)
at android.support.v7.app.ToolbarActionBar.populateOptionsMenu(ToolbarActionBar.java:454)
at android.support.v7.app.ToolbarActionBar$1.run(ToolbarActionBar.java:61)
at android.os.Handler.handleCallback(Handler.java:789)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6541)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)

0 Answers0