Android 在searchview中更改文本

Android 在searchview中更改文本,android,searchview,Android,Searchview,我有一个立即聚焦的Searchview(客户希望这样)。搜索栏中的文本始终是带有文本搜索提示的图标框 如何更改文本 我试过了 SearchView searchView = (SearchView) menu.findItem(R.id.action_search).getActionView(); searchView.setQueryHint("TEST"); 然后文本显示得非常快,然后又变回android的默认值 <item android:id="@+id/action_

我有一个立即聚焦的Searchview(客户希望这样)。搜索栏中的文本始终是带有文本搜索提示的图标框

如何更改文本

我试过了

SearchView searchView = (SearchView) menu.findItem(R.id.action_search).getActionView();
searchView.setQueryHint("TEST");
然后文本显示得非常快,然后又变回android的默认值

<item
    android:id="@+id/action_search"
    android:icon="@drawable/ic_action_search"
    android:title="@string/action_search"
    android:visible="false"
    app:actionViewClass="android.support.v7.widget.SearchView"
    app:showAsAction="collapseActionView|ifRoom" />

根据您的xml,您正在使用支持库。因此,您需要使用以下内容检索项目:

MenuItem searchItem = (MenuItem) menu.findItem(R.id.action_search);
SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchItem);  

然后,您可以使用
searchView.setQueryHint()
更改提示的文本,甚至可以使用
setHintTextColor

更改提示的颜色,然后文本仍会显示片刻,然后翻转回“搜索提示”是否使用SearchAutoComplete小部件?不确定,但在这种情况下,您必须执行:
SearchView.SearchAutoComplete SearchAutoComplete=(SearchView.SearchAutoComplete)SearchView.findViewById(android.support.v7.appcompat.R.id.search\u src\u text)
searchAutoComplete.setHint(“”)“搜索提示”不是android的默认提示。也许我错了,但我不这么认为。您是否可以@user1007522将整个
oncreateoptions菜单
或您在活动中创建的
SearchView
发布到哪里?发现了问题。我的同事添加了一些字符串值。谢谢你的帮助。结合您的支持库代码:)我已经更改了:-)。我复制粘贴了旧代码,以便其他人可以看到您的解决方案。事实上,我只是删除了string.xml中的字符串,然后像你说的那样删除了.setQueryHint:)
MenuItem searchItem = (MenuItem) menu.findItem(R.id.action_search);
SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchItem);