当前位置: 首页 > 知识库问答 >
问题:

可以为Android搜索(即系统辅助搜索)配置EditText(而不是SearchView)吗?

澹台成龙
2023-03-14

我想通过一个包含EditText和按钮的水平LinearLayout创建一个自定义SearchView。用户在EditText中输入搜索查询。

通常,当我们使用SearchView时,我们

>

  • 通过将可搜索活动配置为在清单中接收ACTION_SEARCH意向来声明该活动。

    通过使用清单中的meta元素来声明我们的可搜索配置文件。

    通过配置 SearchView 启用系统辅助搜索(其中系统将搜索查询传递给可搜索活动、提供语音搜索、显示搜索建议等)。这是通过向它传递一个可搜索的Info对象来完成的:

    SearchManager search chManager=(SearchManager)getSystemService(Context.SEARCH_SERVICE); SearchView search chView=(SearchView)menu.findItem(R.id.menu_search). getActionView(); // 假设当前活动是可搜索的活动searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));

    问题是,我可以使用我描述过的自定义搜索小部件(带有Edittext和Button的LinearLayout),并且仍然为其启用系统辅助搜索(通过类似于上面描述的某种方式)吗?

  • 共有1个答案

    陈项禹
    2023-03-14

    你可以监听一个编辑文本的addTextChangedListener并在每次修改时检查你的列表项中的查询字符串。

     类似资料:
    • 我编写了这个小型测试应用程序来演示问题,即当用户按下键盘上的搜索按钮时,可搜索的活动未启动。 我一直在关注开发人员指南,但从我的网络搜索中,发现官方开发人员指南遗漏了一些要点。从我的SO搜索(没有帮助): > < li> 参考1:通过在清单的元素中添加标记来解决。我还查看了示例“用户字典”的清单(我不知道在网上哪里可以找到示例,或者我会链接到它)。这个标签在application元素中。 引用2:

    • 问题内容: 我编写了这个小型测试应用程序来演示该问题,即当用户按下键盘上的搜索按钮时,可搜索活动未启动。 我一直在遵循开发人员指南,但是从我的网络搜索中 发现,官方开发人员指南缺少一些要点。 从我的SO搜索(没有帮助): 参考1:通过在清单中的元素中添加标签来解决。我还查看了示例“用户字典”的清单(我不知道在哪里可以在线找到示例,或者我可以链接到它)。该标签在application元素中。 参考2

    • 使用Lucene libs,我需要对现有的搜索函数进行一些更改:假设以下对象: 名称:“端口对象1” 数据:"TCP(1)/1000-2000" 查询(或搜索文本)为“1142”,是否可以在数据字段内搜索“1142”并找到端口对象1,因为它指的是1000-2000之间的范围? 我只找到了数值范围查询,但这不适用于本例,因为我不知道范围。。。 参考以上代码。查询"1200"应该找到第一个doc。 L

    • 是否可以通过fullTextQuery找到带有特殊字符的单词?luke的搜索很好地处理了查询,但是from fullTextQuery没有返回任何结果。 不带通配符搜索“C”,不带特殊字符。 如何解决这个问题?

    • 问题内容: 我想知道是否有人有使用Ransack与HABTM关系的经验。我的应用具有与之的habtm关系(术语类似于标签)。这是我正在经历的简化解释: 我有两张照片:照片1和照片2。它们具有以下术语: 照片1:A,B,C 照片2:A,B,D 我建立了一个sacksack表单,并在搜索表单中为所有术语创建了复选框,如下所示: 如果我使用:并且我选择“ A,C”,则结果是照片1和照片2。我只想要照片1