Thursday, 3 November 2016

Android searchview expand hide Toolbar title

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

    final MenuItem searchItem = menu.findItem(R.id.search);
    SearchView searchView = (android.widget.SearchView) searchItem.getActionView();

    // Detect SearchView icon clicks
    searchView.setOnSearchClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            setItemsVisibility(menu, searchItem, false);
        }
    });
    // Detect SearchView close
    searchView.setOnCloseListener(new SearchView.OnCloseListener() {
        @Override
        public boolean onClose() {
            setItemsVisibility(menu, searchItem, true);
            return false;
        }
    });

    return super.onCreateOptionsMenu(menu);
}

******************************************************************************

for my case

my Toolbar is


 private void actionBarView(){


        toolbar = (Toolbar) findViewById(com.mafiree.salezstorm.R.id.toolbar);

        setSupportActionBar(toolbar);
        getSupportActionBar().setTitle("Tittle");

 /*       if(toolbar != null) {            setSupportActionBar(toolbar);            getSupportActionBar().setTitle("My custom toolbar!");            getSupportActionBar().setHomeButtonEnabled(true);            getSupportActionBar().setDisplayHomeAsUpEnabled(true);        }*/
        //back button action        ImageView imageview_back=(ImageView)toolbar.findViewById(com.mafiree.salezstorm.R.id.imageview_back);

        imageview_back.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                // Toast.makeText(getApplicationContext(),"back clicked",Toast.LENGTH_LONG).show();                finish();
            }
        });



        textview_property=(TextView)findViewById(R.id.textview_property_list);
      //  textview_property.setVisibility(View.GONE);
        textview_property.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                finish();
            }
        });


    }


my Option menu



   MenuInflater inflater=getMenuInflater();
        inflater.inflate(R.menu.property_menu,menu);
//http://www.mysamplecode.com/2012/11/android-expandablelistview-search.html
      MenuItem searchItem = menu.findItem(R.id.menu_search);
        searchView = (SearchView) searchItem.getActionView();



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

        searchView.setOnFocusChangeListener(new OnFocusChangeListener() {
            @Override
            public void onFocusChange(View v, boolean hasFocus) {


                Toast.makeText(getApplicationContext(),"back clicked",Toast.LENGTH_LONG).show();
            }
        });

        searchView.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(getApplicationContext(),"back clicked",Toast.LENGTH_LONG).show();
                Log.d("************************************searchView**","-----");

            }
        });



        searchView.setOnSearchClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(getApplicationContext(),"back search",Toast.LENGTH_LONG).show();
                //setItemsVisibility(menu, searchItem, false);                textview_property.setVisibility(View.GONE);
            }
        });


        searchView.setOnCloseListener(new OnCloseListener() {
            @Override
            public boolean onClose() {
                textview_property.setVisibility(View.VISIBLE);
                Toast.makeText(getApplicationContext(),"back close",Toast.LENGTH_LONG).show();
                return false;
            }
        });


        searchView.setOnQueryTextListener(new OnQueryTextListener() {
            @Override
            public boolean onQueryTextSubmit(String query) {
                Log.d("*********************************","------"+query);

                if(null != arrayList || arrayList.size() > 0){
                    adapter=new PropertyAdapter(getApplicationContext());
                    listView.setAdapter(adapter);
                    adapter.getFilter().filter(query);
                }

                return false;
            }

            @Override
            public boolean onQueryTextChange(String newText) {
                Log.d("*********************************","------"+newText);
                return false;
            }
        });