我在操作栏中实现了搜索视图。现在的情况是,默认搜索图标是可见的,当我点击它时,它正在扩展文本。但我希望在活动打开时默认显示它扩展,不想打开搜索图标。为此我该怎么办?抱歉我的英语不好。
这是我的menu.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_search"
android:icon="@android:drawable/ic_menu_search"
android:title="@string/search"
app:actionViewClass="android.support.v7.widget.SearchView"
android:imeOptions="actionSearch|flagNoExtractUi"
app:showAsAction="always" />
<item
android:id="@+id/action_settings"
android:title="@string/settings"
app:showAsAction="never" />
</menu>
==============================
在活动中,在onCreateOptionMenu()方法中,我的代码如下:
inflater.inflate(R.menu.videoitem_list, menu);
MenuItem searchItem = menu.findItem(R.id.action_search);
searchView = (SearchView) searchItem.getActionView();
searchView.setFocusable(false);
((EditText)searchView.findViewById(android.support.v7.appcompat.R.id.search_src_text)).setTextColor(Color.WHITE);
((EditText)searchView.findViewById(android.support.v7.appcompat.R.id.search_src_text)).setHintTextColor(Color.WHITE);
答案 0 :(得分:1)
您应该清除搜索,移除焦点,然后致电:
searchView.setIconified(真);
答案 1 :(得分:0)
在onCreateOptionMenu
中尝试此操作searchView.setIconifiedByDefault(false);
答案 2 :(得分:0)
您应该在XML上使用属性android:iconifiedByDefault="false"
或以编程方式设置setIconifiedByDefault(false)
。它将展开searchView
。
您可以在此处找到更多详细信息。public void setIconifiedByDefault (boolean iconified)
答案 3 :(得分:0)
如果您正在使用appcompat
MenuItemCompat.expandActionView(mSearchMenuItem);