在 ActionBar 中将数字输入类型设置为 SearchView

发布于 2024-12-18 06:15:44 字数 846 浏览 1 评论 0原文

我无法将数字输入类型设置为 ActionBar 中的 SearchView。我的 res/xml 文件夹中有以下 searchable.xml 文件:

<searchable xmlns:android="http://schemas.android.com/apk/res/android"
    android:inputType="number"
    android:label="@string/app_name"
    android:hint="@string/search_hint">
</searchable>  

并且我将可搜索配置设置为 SearchView,如下所示:

 // Get the SearchView and set the searchable configuration
 SearchManager searchManager = (SearchManager)    getSystemService(Context.SEARCH_SERVICE);
 SearchView searchView = (SearchView) menu.findItem(R.id.menu_search).getActionView();
 searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));

search_hint 设置正确,但是该行android:inputType="number" 似乎没有效果,即数字键盘没有出现。

有人有解决方案吗?

I don't manage to set the numeric input type to the SearchView in my ActionBar. I have the following searchable.xml file in my res/xml folder:

<searchable xmlns:android="http://schemas.android.com/apk/res/android"
    android:inputType="number"
    android:label="@string/app_name"
    android:hint="@string/search_hint">
</searchable>  

And I set the searchable configuration to the SearchView as follows:

 // Get the SearchView and set the searchable configuration
 SearchManager searchManager = (SearchManager)    getSystemService(Context.SEARCH_SERVICE);
 SearchView searchView = (SearchView) menu.findItem(R.id.menu_search).getActionView();
 searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));

The search_hint is set correctly, but the line android:inputType="number" seems to have no effect, i.e. the numeric keypad doesn't appear.

Does anyone have a solution for this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

ゞ记忆︶ㄣ 2024-12-25 06:15:44

将其添加到您的 searchable.xml 布局文件中:

android:numeric="decimal"

或者如果没有用,请尝试

android:inputType="phone"

让我知道会发生什么。

Add this in your searchable.xml layout file:

android:numeric="decimal"

or If not useful then try,

android:inputType="phone"

And let me know what happen.

書生途 2024-12-25 06:15:44

这应该有效:

SearchView searchView = new SearchView(getContext());
searchView.setInputType(InputType.TYPE_CLASS_NUMBER);

This should work :

SearchView searchView = new SearchView(getContext());
searchView.setInputType(InputType.TYPE_CLASS_NUMBER);
蛮可爱 2024-12-25 06:15:44

试试这个

android:inputType="phone"

try this

android:inputType="phone"
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文