我有一个带有SearchView的ActionBar。
我希望搜索视图始终处于“打开”状态(展开)。使用
可以做到这一点mSearchView.setIconifiedByDefault(false);
但由于某种原因,它会将搜索图标移到文本区域之外:
如果我不使用 setIconifiedByDefault(),看起来我希望它在展开时看起来:
然后它会折叠成背面的搜索图标,也是
MenuItemCompat.expandActionView(searchItem);
似乎没有帮助。
有没有办法达到我想要的目的?
答案 0 :(得分:1)
你可以拦截OnClose事件:
searchView.setOnCloseListener(new SearchView.OnCloseListener() {
@Override
public boolean onClose() {
return true;
}
});
答案 1 :(得分:0)
我能够通过从
更改XML来解决此问题<item android:id="@+id/search"
android:icon="@drawable/my_icon"
app:showAsAction="always|collapseActionView"
app:actionViewClass="android.support.v7.widget.SearchView" />
到
<item android:id="@+id/search"
android:icon="@drawable/my_icon"
app:showAsAction="always"
app:actionViewClass="android.support.v7.widget.SearchView" />
答案 2 :(得分:0)
始终在操作栏上显示/扩展搜索框
这是一个两步解决方案,
1.public void onCreateOptionsMenu(M ... ... searchView.setIconifiedByDefault(false); }
2。 在菜单xml文件中,确保设置了android:showAsAction =“ always”
<item
android:id="@+id/grid_default_search"
android:icon="@android:drawable/ic_menu_search"
android:title="search"
android:showAsAction="always"
android:actionViewClass="android.widget.SearchView"
/>