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

Android 如何将“在操作栏中搜索”中输入的文本转换为字符串?,android,android-intent,android-activity,android-actionbar,Android,Android Intent,Android Activity,Android Actionbar,我有一个在标题栏中完美显示搜索的活动,但现在我想将在操作栏中搜索中输入的文本转换为字符串。请帮忙 她是我的菜单/xml <?xml version="1.0" encoding="utf-8"?> 您使用过searchView吗?您可以使用以下代码: @Override public boolean onCreateOptionsMenu(Menu menu) { getSupportMenuInflater().inflate(R.menu.main, menu);

我有一个在标题栏中完美显示搜索的活动,但现在我想将在操作栏中搜索中输入的文本转换为字符串。请帮忙

她是我的菜单/xml

<?xml version="1.0" encoding="utf-8"?>
您使用过searchView吗?您可以使用以下代码:

@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 you can get the value "query" which is entered in the search box.**

        }
    };
    searchView.setOnQueryTextListener(queryTextListener);

    return super.onCreateOptionsMenu(menu);
}
您使用过searchView吗?您可以使用以下代码:

@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 you can get the value "query" which is entered in the search box.**

        }
    };
    searchView.setOnQueryTextListener(queryTextListener);

    return super.onCreateOptionsMenu(menu);
}
如果您使用的是工具栏,则可以执行以下操作:

MenuItem menuItem = getToolbar().getMenu().findItem(R.id.action_search);
SearchView searchView = (SearchView) MenuItemCompat.getActionView(menuItem);
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            Log.i("well", " this worked");
            return false;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            Log.i("well", " this worked");
            return false;
        }
    });
如果您使用的是工具栏,则可以执行以下操作:

MenuItem menuItem = getToolbar().getMenu().findItem(R.id.action_search);
SearchView searchView = (SearchView) MenuItemCompat.getActionView(menuItem);
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            Log.i("well", " this worked");
            return false;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            Log.i("well", " this worked");
            return false;
        }
    });