void SetupSearchInput(Android.Support.V7.Widget.SearchView searchView)
        {
            var searchManager = Activity.GetSystemService(Context.SearchService).JavaCast <SearchManager> ();

            searchView.SetIconifiedByDefault(false);
            var searchInfo = searchManager.GetSearchableInfo(Activity.ComponentName);

            searchView.SetSearchableInfo(searchInfo);
        }
Exemple #2
0
        public override bool OnCreateOptionsMenu(IMenu menu)
        {
            MenuInflater inflater = MenuInflater;

            inflater.Inflate(Resource.Menu.group, menu);
            var       searchManager = (SearchManager)GetSystemService(Context.SearchService);
            IMenuItem searchItem    = menu.FindItem(Resource.Id.menu_search);
            var       view          = MenuItemCompat.GetActionView(searchItem);

            searchView = view.JavaCast <Android.Support.V7.Widget.SearchView>();

            searchView.SetSearchableInfo(searchManager.GetSearchableInfo(ComponentName));
            searchView.SetOnSuggestionListener(new SuggestionListener(searchView.SuggestionsAdapter, this, searchItem));
            searchView.SetOnQueryTextListener(new OnQueryTextListener(this));

            if (_prefs.GetBoolean("ActivateSearchView", false) && AppTask.CanActivateSearchViewOnStart)
            {
                //need to use PostDelayed, otherwise the menu_lock item completely disappears
                searchView.PostDelayed(() =>
                {
                    searchView.Iconified = false;
                    AppTask.CanActivateSearchViewOnStart = false;
                }, 500);
            }

            ActionBar.LayoutParams lparams = new ActionBar.LayoutParams(ActionBar.LayoutParams.MatchParent,
                                                                        ActionBar.LayoutParams.MatchParent);
            searchView.LayoutParameters = lparams;


            _syncItem = menu.FindItem(Resource.Id.menu_sync);


            _offlineItem = menu.FindItem(Resource.Id.menu_work_offline);
            _onlineItem  = menu.FindItem(Resource.Id.menu_work_online);

            UpdateOfflineModeMenu();


            return(base.OnCreateOptionsMenu(menu));
        }
Exemple #3
0
        public override void OnCreateOptionsMenu(IMenu menu, MenuInflater inflater)
        {
            inflater.Inflate(Resource.Menu.toolbar_menu, menu);

            IMenuItem     searchItem    = menu.FindItem(Resource.Id.toolbarSearch);
            SearchManager searchManager = (SearchManager)Activity.GetSystemService(Context.SearchService);
            v7SearchView  searchView    = (v7SearchView)menu.FindItem(Resource.Id.toolbarSearch).ActionView;

            searchView.SetSearchableInfo(searchManager.GetSearchableInfo(Activity.ComponentName));

            searchView.QueryTextSubmit += (sender, e) =>
            {
                Log.Info(tag, $"searching for {e.NewText}");
                floorPagerAdapter.Filter.InvokeFilter(e.NewText);
                e.Handled = true;
            };

            searchItem.SetOnActionExpandListener(new SearchViewExpandListener(floorPagerAdapter));

            base.OnCreateOptionsMenu(menu, inflater);
        }