希望将searchview连接到mainactivity数据-制作一个带有search view的记事本应用程序以连接到记事本的笔记

mrfwxfqh  于 2021-07-06  发布在  Java
关注(0)|答案(1)|浏览(290)

我创建了一个资源菜单文件,完成了所有的xml工作,还添加了
`公共布尔onCreateOptions菜单(菜单){

MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.option_menu, menu);
    MenuItem item=menu.findItem(R.id.Search);
    SearchView searchView=(SearchView) MenuItemCompat.getActionView(item);

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

        @Override
        public boolean onQueryTextChange(String s) {

            return false;
        }
    });
    return true;

}`

现在如何连接用户创建的笔记数据。一旦他尝试使用搜索栏,他应该能够在他创建的单词或笔记中搜索。

9gm1akwq

9gm1akwq1#

您必须在onOptions ItemSelected()中编写搜索查询侦听器,而不是在onCreateOptions菜单中编写,如:

@Override
    public boolean onOptionsItemSelected(@NonNull MenuItem item) {
        switch (item.getItemId()) {
            case R.id.search_item:
                searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
                    @Override
                    public boolean onQueryTextSubmit(String query) {
                       //your logic of search goes here...

                        searchView.clearFocus();  //disables the keyboard show up on rotation.
                        return true;
                    }

                    @Override
                    public boolean onQueryTextChange(String newText) {
                        return true;
                    }
                });

                return true;
        }
        return super.onOptionsItemSelected(item);
    }

相关问题