Skip to content Skip to sidebar Skip to footer

Onquerytextlistenercompat Not Getting Triggered

I'm trying to make an app that uses SearchView compatible with devices running Android version 2.3 up to 4.4+. I currently have the following code inside an ActionBarActivity, whic

Solution 1:

I've solved this problem by not using SearchViewCompat I tested it's compatability from Gingerbread and to the latest version

in my search_menu.xml

<menuxmlns:android="http://schemas.android.com/apk/res/android"xmlns:yourapp="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools" ><itemandroid:id="@+id/menu_item_search"android:icon="@android:drawable/ic_menu_search"android:orderInCategory="1"android:title="@string/menu_search"yourapp:actionViewClass="android.support.v7.widget.SearchView"yourapp:showAsAction="always|collapseActionView"/></menu>

and in my Main.xml

publicclassMainextendsActionBarActivityimplementsOnQueryTextListener {
    privateSearchView searchView;
    privateSearchManager searchManager;
        protectedvoidonCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        supportRequestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
        setContentView(R.layout.activity_main);
    }


     @OverridepublicbooleanonCreateOptionsMenu(final Menu menu) {
                // Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.search_menu, menu);
                View view = MenuItemCompat.getActionView(menu.findItem(R.id.menu_item_filter)); 
    searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
                MenuItem searchItem = menu.findItem(R.id.menu_item_search);
                searchView = (SearchView) MenuItemCompat.getActionView(searchItem);
                searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
                searchView.setQueryHint("Search...");
                searchView.setIconifiedByDefault(false); 
                searchView.setIconified(false);
                searchView.setOnQueryTextListener(Main.this);
                searchView.clearFocus();
                returnsuper.onCreateOptionsMenu(menu);
    }
    publicbooleanonQueryTextChange(String val) {

        if(!val.isEmpty()){
            Log.e(""+val);
        }
        returnfalse;
    }

    @OverridepublicbooleanonQueryTextSubmit(String val) {  
        Log.e(""+val);
        returnfalse;
    }
}

Post a Comment for "Onquerytextlistenercompat Not Getting Triggered"