如何获得进入搜索的操作栏为字符串文本? [英] How to get the text entered in search in action bar to a string?
本文介绍了如何获得进入搜索的操作栏为字符串文本?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想创建与搜索行动吧。 我能够创造的搜索栏。我怎样才能在字段中输入字符串文本?有没有什么好的code与搜索行动起来吧?
我所做的就是
SearchManager searchManager =
(SearchManager)getSystemService(Context.SEARCH_SERVICE);
搜索查看搜索查看=
(搜索查看)menu.findItem(R.id.menu_search).getActionView();
意向意图= getIntent();
如果(Intent.ACTION_SEARCH.equals(intent.getAction())){
字符串搜索= intent.getStringExtra(SearchManager.QUERY);
解决方案
您可以使用搜索栏是这样的。
@覆盖
公共布尔onCreateOptionsMenu(功能菜单){
。getSupportMenuInflater()膨胀(R.menu.main,菜单);
SearchManager searchManager =(SearchManager)getSystemService(Context.SEARCH_SERVICE);
搜索查看搜索查看=(搜索查看)menu.findItem(R.id.menu_search)
.getActionView();
如果(NULL!=搜索查看){
searchView.setSearchableInfo(searchManager
.getSearchableInfo(getComponentName()));
searchView.setIconifiedByDefault(假);
}
SearchView.OnQueryTextListener queryTextListener =新SearchView.OnQueryTextListener(){
公共布尔onQueryTextChange(字符串newText){
//这是你的适配器将被过滤掉
返回true;
}
公共布尔onQueryTextSubmit(查询字符串){
//这里u能得到它输入到搜索框中的值查询。
}
};
searchView.setOnQueryTextListener(queryTextListener);
返回super.onCreateOptionsMenu(菜单);
}
I am trying to create an action bar with search. I am able to create the search bar. How I can get the text entered in the field to string? Is there any good code for action bar with search?
What I done is
SearchManager searchManager =
(SearchManager) getSystemService(Context.SEARCH_SERVICE);
SearchView searchView =
(SearchView) menu.findItem(R.id.menu_search).getActionView();
Intent intent = getIntent();
if (Intent.ACTION_SEARCH.equals(intent.getAction())) {
String search = intent.getStringExtra(SearchManager.QUERY);
解决方案
You can use the search bar as like this.
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getSupportMenuInflater().inflate(R.menu.main, menu);
SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
SearchView searchView = (SearchView) menu.findItem(R.id.menu_search)
.getActionView();
if (null != searchView) {
searchView.setSearchableInfo(searchManager
.getSearchableInfo(getComponentName()));
searchView.setIconifiedByDefault(false);
}
SearchView.OnQueryTextListener queryTextListener = new SearchView.OnQueryTextListener() {
public boolean onQueryTextChange(String newText) {
// this is your adapter that will be filtered
return true;
}
public boolean onQueryTextSubmit(String query) {
//Here u can get the value "query" which is entered in the search box.
}
};
searchView.setOnQueryTextListener(queryTextListener);
return super.onCreateOptionsMenu(menu);
}
这篇关于如何获得进入搜索的操作栏为字符串文本?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文