android.support.v7.widget.SearchView#setOnCloseListener ( )源码实例Demo

下面列出了android.support.v7.widget.SearchView#setOnCloseListener ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: ActivityDiary   文件: MainActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.main_menu, menu);

    // Get the SearchView and set the searchable configuration
    SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
    searchMenuItem = menu.findItem(R.id.action_filter);
    searchView = (SearchView) searchMenuItem.getActionView();
    // Assumes current activity is the searchable activity
    searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));

    searchView.setOnCloseListener(this);
    searchView.setOnQueryTextListener(this);
    // setOnSuggestionListener -> for selection of a suggestion
    // setSuggestionsAdapter
    searchView.setOnSearchClickListener(v -> setSearchMode(true));
    return true;
}
 
源代码2 项目: photoviewer   文件: PhotosListActivity.java
private void setUpSearchMenu(Menu menu) {
    // Associate searchable configuration with the SearchView
    SearchManager searchManager =
            (SearchManager) getSystemService(Context.SEARCH_SERVICE);
    SearchView searchView =
            (SearchView) menu.findItem(R.id.menu_search).getActionView();
    searchView.setSearchableInfo(
            searchManager.getSearchableInfo(getComponentName()));

    searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            return false;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            mPhotoListPresenter.searchByTitle(newText);
            return true;
        }
    });
    searchView.setOnCloseListener(() -> {
        mPhotoListPresenter.searchByTitle(null);
        return false;
    });
}
 
源代码3 项目: NintendoSwitchEShopHelper   文件: MainActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.search_view, menu);
    MenuItem searchItem = menu.findItem(R.id.menu_item_search);
    final SearchView searchView = (SearchView) searchItem.getActionView();
    searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            QueryPreferences.setStoredQuery(mContext, query);
            updateItems();
            searchView.clearFocus();
            return true;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            QueryPreferences.setStoredQuery(mContext, newText.equals("") ? null : newText);
            updateItems();
            return true;
        }
    });

    searchView.setOnCloseListener(new SearchView.OnCloseListener() {
        @Override
        public boolean onClose() {
            QueryPreferences.setStoredQuery(mContext, null);
            updateItems();
            searchView.onActionViewCollapsed();
            return true;
        }
    });

    return super.onCreateOptionsMenu(menu);
}
 
源代码4 项目: fangzhuishushenqi   文件: ReadCHMActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_chm_reader, menu);

    MenuItem searchMenuItem = menu.findItem(R.id.menu_search);//在菜单中找到对应控件的item
    SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchMenuItem);
    searchView.setOnCloseListener(new SearchView.OnCloseListener() {
        @Override
        public boolean onClose() {
            mWebView.clearMatches();
            return false;
        }
    });
    searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            return false;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            mWebView.findAllAsync(newText);
            try {
                for (Method m : WebView.class.getDeclaredMethods()) {
                    if (m.getName().equals("setFindIsUp")) {
                        m.setAccessible(true);
                        m.invoke(mWebView, true);
                        break;
                    }
                }
            } catch (Exception ignored) {
            }
            return false;
        }
    });
    return true;
}
 
源代码5 项目: Android-Firewall   文件: ActivityMain.java
@Override+
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.main, menu);

    // Search
    searchItem = menu.findItem(R.id.menu_search);
    SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchItem);
    searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            if (adapter != null)
                adapter.getFilter().filter(query);
            return true;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            if (adapter != null)
                adapter.getFilter().filter(newText);
            return true;
        }
    });
    searchView.setOnCloseListener(new SearchView.OnCloseListener() {
        @Override
        public boolean onClose() {
            if (adapter != null)
                adapter.getFilter().filter(null);
            return true;
        }
    });

    return true;
}
 
源代码6 项目: CryptoBuddy   文件: AllCurrencyListFragment.java
@Override
public void onCreateOptionsMenu(final Menu menu, MenuInflater inflater) {
    getActivity().getMenuInflater().inflate(R.menu.all_currency_list_tab_menu, menu);
    searchItem = menu.findItem(R.id.action_search);
    searchView = (SearchView) MenuItemCompat.getActionView(searchItem);
    searchView.setOnQueryTextListener(this);
    // Detect SearchView icon clicks
    searchView.setOnSearchClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            searchViewFocused = true;
            setItemsVisibility(menu, searchItem, false);
            drawerController.hideHamburger();
        }
    });
    // Detect SearchView close
    searchView.setOnCloseListener(new SearchView.OnCloseListener() {
        @Override
        public boolean onClose() {
            searchViewFocused = false;
            setItemsVisibility(menu, searchItem, true);
            drawerController.showHamburger();
            return false;
        }
    });
    if (searchViewFocused) ((AppCompatActivity)mContext).getSupportActionBar().setTitle("");
    super.onCreateOptionsMenu(menu, inflater);
}
 
源代码7 项目: mvp-helpers   文件: TaskListFragment.java
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    inflater.inflate(R.menu.task_list_menu, menu);

    final MenuItem item = menu.findItem(R.id.action_search);
    final ActionBar actionBar = ((AppCompatActivity) getActivity()).getSupportActionBar();

    if (null != actionBar) {
        final SearchView searchView = new SearchView(actionBar.getThemedContext());

        MenuItemCompat.setActionView(item, searchView);

        searchView.setOnQueryTextListener(this);
        searchView.setIconifiedByDefault(false);

        searchView.setOnSearchClickListener(v -> newTaskButton.hide());
        searchView.setOnCloseListener(this::onClose);

        MenuItemCompat.setOnActionExpandListener(item, this);
    }

    if (isPresenterAvailable()) {
        Long count = getPresenter().getTasksCount();

        menu.findItem(R.id.action_delete_all).setEnabled(count != 0);
        menu.findItem(R.id.action_delete_all).setVisible(count != 0);
    }

    super.onCreateOptionsMenu(menu, inflater);
}
 
源代码8 项目: TouchNews   文件: MusicFragment.java
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    inflater.inflate(R.menu.menu_music, menu);
    super.onCreateOptionsMenu(menu, inflater);
    mMenuItemSearch = (SearchView) MenuItemCompat.getActionView(menu.findItem(R.id.action_search));
    mMenuItemSearch.setOnCloseListener(new SearchView.OnCloseListener() {
        @Override
        public boolean onClose() {
            mListView.setVisibility(View.GONE);
            //刷新待选List 为默认值
            updateSearchList(mSearchChooseDef);
            return false;
        }
    });
    //文本输入框可见、显示ListView
    mMenuItemSearch.setOnQueryTextFocusChangeListener(new View.OnFocusChangeListener() {
        @Override
        public void onFocusChange(View v, boolean hasFocus) {
            if (hasFocus) {
                mListView.setVisibility(View.VISIBLE);
            }
        }
    });
    mMenuItemSearch.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            return false;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            //文本输入改变实时搜索关键字
            mMusicsPresenter.searchMusic(newText);
            //文本输入改变 List 滑动到顶部
            mListView.setSelection(0);
            return true;
        }
    });

}
 
源代码9 项目: Pasta-Music   文件: HomeActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_home, menu);

    SearchView searchView = (SearchView) MenuItemCompat.getActionView(menu.findItem(R.id.action_search));

    searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            search(query, false);
            return true;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            if (preload) search(newText, true);
            return true;
        }
    });

    searchView.setOnCloseListener(new SearchView.OnCloseListener() {
        @Override
        public boolean onClose() {
            if (f instanceof SearchFragment) onBackPressed();
            return false;
        }
    });

    return super.onCreateOptionsMenu(menu);
}
 
源代码10 项目: Theogony   文件: SearchActivity.java
private void setupSearchView(final SearchView searchView) {
    SearchManager searchManager = (SearchManager) getSystemService(SEARCH_SERVICE);
    searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
    searchView.setIconified(false); // xml中设置不起作用
    searchView.setOnQueryTextListener(this);
    searchView.setOnCloseListener(new SearchView.OnCloseListener() {
        @Override
        public boolean onClose() {
            return true;
        }
    });
}
 
源代码11 项目: budget-watch   文件: TransactionActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.transaction_menu, menu);

    // Associate searchable configuration with the SearchView
    SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
    SearchView searchView = (SearchView) menu.findItem(R.id.action_search).getActionView();
    searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));

    searchView.setOnCloseListener(new SearchView.OnCloseListener()
    {
        @Override
        public boolean onClose()
        {
            _currentlySearching = false;

            // Re-populate the transactions
            onResume();

            // false: allow the default cleanup behavior on the search view on closing.
            return false;
        }
    });

    searchView.setOnSearchClickListener(new View.OnClickListener()
    {
        @Override
        public void onClick(View v)
        {
            _currentlySearching = true;
        }
    });

    return super.onCreateOptionsMenu(menu);
}
 
源代码12 项目: BookReader   文件: ReadCHMActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_chm_reader, menu);

    MenuItem searchMenuItem = menu.findItem(R.id.menu_search);//在菜单中找到对应控件的item
    SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchMenuItem);
    searchView.setOnCloseListener(new SearchView.OnCloseListener() {
        @Override
        public boolean onClose() {
            mWebView.clearMatches();
            return false;
        }
    });
    searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            return false;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            mWebView.findAllAsync(newText);
            try {
                for (Method m : WebView.class.getDeclaredMethods()) {
                    if (m.getName().equals("setFindIsUp")) {
                        m.setAccessible(true);
                        m.invoke(mWebView, true);
                        break;
                    }
                }
            } catch (Exception ignored) {
            }
            return false;
        }
    });
    return true;
}
 
源代码13 项目: Pasta-for-Spotify   文件: HomeActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_home, menu);

    SearchView searchView = (SearchView) MenuItemCompat.getActionView(menu.findItem(R.id.action_search));

    searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            search(query, false);
            return true;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            if (preload) search(newText, true);
            return true;
        }
    });

    searchView.setOnCloseListener(new SearchView.OnCloseListener() {
        @Override
        public boolean onClose() {
            if (f instanceof SearchFragment) onBackPressed();
            return false;
        }
    });

    return super.onCreateOptionsMenu(menu);
}
 
源代码14 项目: hr   文件: BaseFragment.java
public void setHasSearchView(IOnSearchViewChangeListener listener,
                             Menu menu, int menu_id) {
    mOnSearchViewChangeListener = listener;
    mSearchView = (SearchView) MenuItemCompat.getActionView(menu
            .findItem(menu_id));
    if (mSearchView != null) {
        mSearchView.setOnCloseListener(closeListener);
        mSearchView.setOnQueryTextListener(searchViewQueryListener);
        mSearchView.setIconifiedByDefault(true);
    }
}
 
源代码15 项目: framework   文件: BaseFragment.java
public void setHasSearchView(IOnSearchViewChangeListener listener,
                             Menu menu, int menu_id) {
    mOnSearchViewChangeListener = listener;
    mSearchView = (SearchView) MenuItemCompat.getActionView(menu
            .findItem(menu_id));
    if (mSearchView != null) {
        mSearchView.setOnCloseListener(closeListener);
        mSearchView.setOnQueryTextListener(searchViewQueryListener);
        mSearchView.setIconifiedByDefault(true);
    }
}
 
源代码16 项目: PowerFileExplorer   文件: CHMActivity.java
@Override
 public boolean onCreateOptionsMenu(Menu menu) {
     getMenuInflater().inflate(R.menu.menu_chm, menu);

     SearchManager searchManager =
(SearchManager) getSystemService(Context.SEARCH_SERVICE);
     SearchView searchView =
(SearchView) menu.findItem(R.id.menu_search).getActionView();
     searchView.setSearchableInfo(
searchManager.getSearchableInfo(getComponentName()));
     searchView.setOnCloseListener(new SearchView.OnCloseListener() {
	@Override
	public boolean onClose() {
		webview.clearMatches();
		return false;
	}
});
     searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
	@Override
	public boolean onQueryTextSubmit(String query) {
		return false;
	}

	@Override
	public boolean onQueryTextChange(String newText) {
		webview.findAllAsync(newText);
		try {
			for (Method m : WebView.class.getDeclaredMethods()) {
				if (m.getName().equals("setFindIsUp")) {
					m.setAccessible(true);
					m.invoke((webview), true);
					break;
				}
			}
		} catch (Exception ignored) {
		}
		return false;
	}
});
     return true;
 }
 
源代码17 项目: timecat   文件: FloatViewWhiteListActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {
        getMenuInflater().inflate(R.menu.white_list_activity_menu, menu);
        SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
        final SearchView searchView = (SearchView) menu.findItem(R.id.ab_search).getActionView();

        selectAll = menu.findItem(R.id.select_all);
        setSelection = menu.findItem(R.id.setSelection);

        final SearchView.SearchAutoComplete searchEditText = searchView.findViewById(R.id.search_src_text);

        searchEditText.setTextColor(getResources().getColor(R.color.white));
        searchView.setQueryHint("Search");

        // 将搜索按钮放到搜索输入框的外边
        searchView.setIconifiedByDefault(false);


        searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
        searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
            @Override
            public boolean onQueryTextSubmit(String query) {
                return false;
            }

            @Override
            public boolean onQueryTextChange(String newText) {
                refreshListByQuery(searchView.getQuery().toString());
                return true;
            }
        });
        searchView.setOnCloseListener(new SearchView.OnCloseListener() {
            @Override
            public boolean onClose() {
                refreshListByQuery("");
                return false;
            }
        });

    }
    refreshMenu(false);
    return true;
}
 
源代码18 项目: timecat   文件: WhiteListActivity.java
@Override
    public boolean onCreateOptionsMenu(Menu menu) {
        if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {
            getMenuInflater().inflate(R.menu.white_list_activity_menu, menu);
            SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
            final SearchView searchView = (SearchView) menu.findItem(R.id.ab_search).getActionView();

            selectAll = menu.findItem(R.id.select_all);
            setSelection = menu.findItem(R.id.setSelection);

            final SearchView.SearchAutoComplete searchEditText = searchView.findViewById(R.id.search_src_text);

            searchEditText.setTextColor(getResources().getColor(R.color.white));
            searchView.setQueryHint("Search");

            // 将搜索按钮放到搜索输入框的外边
            searchView.setIconifiedByDefault(false);


            searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
            searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
                @Override
                public boolean onQueryTextSubmit(String query) {
                    return false;
                }

                @Override
                public boolean onQueryTextChange(String newText) {
                    refreshListByQuery(searchView.getQuery().toString());
                    return true;
                }
            });
            searchView.setOnCloseListener(new SearchView.OnCloseListener() {
                @Override
                public boolean onClose() {
                    refreshListByQuery("");
                    return false;
                }
            });

//            MenuItem menuItem=menu.add("恢复默认");
//            menuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
//            menuItem.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
//                @Override
//                public boolean onMenuItemClick(MenuItem item) {
//                    if(mSelectedApplicationInfos==null){
//                        SnackBarUtil.show(toolbar,R.string.wait_until_loaded);
//                        return true;
//                    }
//                    for (AppListAdapter.ApplicationInfoWrap app:mSelectedApplicationInfos){
//                        app.isSelected=false;
//                    }
//                    mSelectedApplicationInfos.clear();
//                    mAppAdapter.notifyDataSetChanged();
//                    refreshTV();
//                    return true;
//                }
//            });
        }
        setSelection.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
            @Override
            public boolean onMenuItemClick(MenuItem item) {
                showPopupMenu(toolbar);
                return true;
            }
        });
        refreshMenu(false);
        return true;
    }
 
源代码19 项目: timecat   文件: XposedAppManagerActivity.java
@Override
    public boolean onCreateOptionsMenu(Menu menu) {
        if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {
            getMenuInflater().inflate(R.menu.white_list_activity_menu, menu);
            SearchManager searchManager =
                    (SearchManager) getSystemService(Context.SEARCH_SERVICE);
            final SearchView searchView = (SearchView) menu.findItem(R.id.ab_search).getActionView();

            selectAll=menu.findItem(R.id.select_all);
            setSelection=menu.findItem(R.id.setSelection);

            final SearchView.SearchAutoComplete searchEditText = (SearchView.SearchAutoComplete) searchView.findViewById(R.id.search_src_text);

            searchEditText.setTextColor(getResources().getColor(R.color.white));
            searchView.setQueryHint("Search");

            // 将搜索按钮放到搜索输入框的外边
            searchView.setIconifiedByDefault(false);


            searchView.setSearchableInfo(
                    searchManager.getSearchableInfo(getComponentName()));
            searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
                @Override
                public boolean onQueryTextSubmit(String query) {
                    return false;
                }

                @Override
                public boolean onQueryTextChange(String newText) {
                    refreshListByQuery(searchView.getQuery().toString());
                    return true;
                }
            });
            searchView.setOnCloseListener(new SearchView.OnCloseListener() {
                @Override
                public boolean onClose() {
                    refreshListByQuery("");
                    return false;
                }
            });

//            MenuItem menuItem=menu.add("恢复默认");
//            menuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
//            menuItem.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
//                @Override
//                public boolean onMenuItemClick(MenuItem item) {
//                    if(mSelectedApplicationInfos==null){
//                        SnackBarUtil.show(toolbar,R.string.wait_until_loaded);
//                        return true;
//                    }
//                    for (AppListAdapter.ApplicationInfoWrap app:mSelectedApplicationInfos){
//                        app.isSelected=false;
//                    }
//                    mSelectedApplicationInfos.clear();
//                    mAppAdapter.notifyDataSetChanged();
//                    refreshTV();
//                    return true;
//                }
//            });
        }
        setSelection.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
            @Override
            public boolean onMenuItemClick(MenuItem item) {
                showPopupMenu(toolbar);
                return true;
            }
        });
        refreshMenu(false);
        return true;
    }