android - 如何将在操作栏中的搜索中输入的文本转换为字符串?

标签 android android-actionbar

我正在尝试创建一个带有搜索功能的操作栏。 我能够创建搜索栏。如何将字段中输入的文本转换为字符串?有搜索的 Action 栏有什么好的代码吗?

我做的是

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);

最佳答案

您可以像这样使用搜索栏。

@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);
}

关于android - 如何将在操作栏中的搜索中输入的文本转换为字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19588311/

相关文章:

android - 使用 MVP 架构在运行时检查权限的最佳方法是什么?

java - 处理后退按钮

android - 在 ListView 中显示某种静态数据

android - Android 图标大小应遵循哪个 Google 文档?

android - 如何使用 setRequiredNetworkType(NetworkType.CONNECTED) 约束测试 Android WorkManager?

android - ActionBar 的问题

android - 防止 Android ActionBar 滚动

android - 如何创建 ActionBar 的 Action Overflow 部分?

android - 如何正确隐藏操作栏?

android - 你怎么把 FragmentTabhost 放在底部