问题标签 [searchview]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - searchManager.getSearchableInfo(getComponentName()) 返回 null
我已按照此 Android 指南向活动添加搜索栏。设置如下所示:
资源/菜单/activity_main.xml:
res/xml/searchable.xml:
清单文件中的活动条目:
和 MainActivity 中的代码:
调用searchManager.getSearchableInfo(getComponentName());
总是返回null
。我在stackoverflow的其他问题中看到了这一点,但是,那里提出的解决方案似乎都不适用于我的案例。
- 菜单 XML 有一个
<?xml version="1.0" encoding="utf-8"?>
标题 - 可搜索的 XML 没有硬编码字符串
- 重命名菜单项不起作用
- 清洁和重建也无济于事
很感谢任何形式的帮助。谢谢!
java - SearchView.OnCloseListener 没有被调用
我正在使用操作栏并向其添加 searchView。我已经实现了 searchView.onCLoseListener 但这似乎没有被调用。有什么建议么 ?
我的代码看起来像这样:
android - 使用 ActionBarSherlock 在 SearchView 上出现 NullPointerException
我正在使用ActionBarSherlock
和支持库 v4。这是在“SherlockFragmentActivity”中。
我在第 269 行得到了一个 Nullpointer,如下所示。我已验证 SearchView 为空,而不是 SearchManager。虽然,menu
也为空,但我不确定这是否正常? 重要提示:它仅在我的 Android 4.0 和 4.1 测试中为空。在 2.3 中,它工作得很好!
这是我的SearchView
代码:
我现在有这个作为我的菜单项。
日志猫
进口:
同样,我只在 4.0 模拟器和 4.1 设备中获得空指针。应用程序在 2.3 中运行良好。有一次,pre-ActionBarSherlock,使用相同的代码,除了SearchView
通过正常方式(不是 Sherlock)导入它在 4.0 中工作得很好。我正在尝试使我的应用程序向后兼容并且破坏了较新的 Android 版本,但在较旧的版本中运行良好。
编辑: 当菜单项有时,它实际上是 2.3 中的 Null 和 4.0+ 中的 Cast Issue android:actionViewClass="android.app.SearchView"
然后我将其更改为 android:actionViewClass="com.actionbarsherlock.widget.SearchView"
,现在在 2.3 中为 FIXED,在 4.0+ 中为 Null
更新:我似乎用 hack 来修复它:
我添加了一个menu-v11
文件夹,添加了 menu.xml 的重复文件,仅更改了一项:android:actionViewClass="android.app.SearchView"
,否则它与另一个 menu.xml 文件相同。
在 Java 中,我这样做了:
好吧,它有效,但我还没有把它作为答案,因为它看起来像是黑客的做法。对更好的想法持开放态度?
android - Android SearchView 图标
我想禁用搜索视图组件内显示的 Mag 图标。知道如何引用它并将其删除或用另一个可绘制对象替换它吗?
android - Android SearchView 过滤 ListView
我已经在我的 SherlockAction Bar 中为我的 SearchView 实现了搜索过滤器。
当我键入 mi 时,希望在下面的列表视图中显示过滤结果,该列表视图仅以 M 开头,依此类推。但现在它显示随机结果。
android - 搜索过滤列表视图的 Android IndexOutOfBoundsException 错误
我已经在我的 SherlockAction Bar 中为我的 SearchView 实现了搜索过滤器。我已经实现了一个自定义过滤器。当我输入任何字母时,我收到一个错误
错误
错误
它指向
android - SearchView 的可搜索配置返回 Null
我创建了一个搜索界面,但似乎无法将其连接SearchView
到ActionBar
我的可搜索配置文件。当我尝试在我的onCreateOptionsMenu
方法中检索它时SearchManager.getSearchableInfo(getComponentName()
返回 null。有人可以帮我解决这个问题吗?
Settings.onCreateOptionsMenu(菜单)
AndroidManifest.xml 中的设置活动
AndroidManifest.xml 中的可搜索活动
我的菜单 xml 文件中有标题<?xml version="1.0" encoding="utf-8"?>
,我尝试清理项目。他们似乎都没有成功。
android - onSuggestionClick 重新创建我的活动
在我的应用程序中,我使内容提供程序可搜索,将我的主要活动定义为清单上的默认搜索活动。
然后我根据用户点击的建议实现了 onSuggestionClick 选项来更新地图。搜索视图位于操作栏上。问题是当用户点击一个建议时,以某种方式重新创建了活动(我认为 OnPause 和 OnResume 被调用了?)。有什么办法可以防止这种情况发生吗?我不希望每次用户单击建议时都“重新创建”我的活动。
如果需要更多代码,请询问。谢谢。
编辑:添加代码
关于我的主要活动:
android - Android ActionBar 自定义搜索视图
--- 解决了问题 - 在编辑文本中添加了答案 ---
我ActionBar
在我的 Android 应用程序中使用 Sherlock。那里我想展示一个SearchView
. 到目前为止它工作正常,但我意识到,我在尝试自定义它时做错了。
我这样创建它:
我想做两件事:
更改显示在出现的文本字段中的文本“搜索”的颜色。看起来我用主题中的整体文本样式更改了它,但我希望我能以某种方式设置单独的颜色。
打开此搜索视图时,它会出现在操作栏的左侧。但我需要它在右侧。图标(放大镜)实际上位于栏的右侧,但按下它会打开左侧的 EditTextfield。我尝试使用 LayoutParams,但在尝试使用 LayoutParams 将其添加到操作栏时,我遗漏了一些重要的东西。
所以希望有人可以帮助我。
非常感谢,托拜厄斯
- - 编辑 - -
好的,所以一件事已经解决了。通过 XML 添加 ActionBar 会使 TextEdit 向右。
在我的 menu.xml
所以至少解决了一个谜(为什么这会有所作为)。但是新创建的 XML 在调用时不再关闭
所以还是有问题的。
--- 编辑 2 ---
只是让你知道。我找到了文本颜色的解决方案。可以通过使用 SearchView 的 AutoCompleteTextView 来实现:
所以我遇到的最后一个问题是 SearchView 在提交文本时不再关闭。所以 collapseActionView() 等不起作用。有任何想法吗?
--- 编辑 3 ---
好的,我找到了解决方案。我不知道这是否是正确的方法,但是在使用时
它关闭EditText
我必须这样做两次,因为第一次只是“删除”我的输入文本并显示“提示”,而第二次使用是“关闭”提示 EditText 并将 searchView 折叠到放大镜。笨拙的风格,但它的作品。:-)
android - 使用 HoloEveryWhere 单击 ActionBar 上的 SearchView 图标时,如何隐藏 SubMenu?
在我的演示中,我的操作栏上放置了一个搜索视图和一个子菜单,如下所示:@Override public boolean onPrepareOptionsMenu(Menu menu) {
使用 HoloEveryWhere 单击 ActionBar 上的 SearchView 图标时,如何隐藏 SubMenu?