ActionBar总是使用里面的图标扩展SearchView

时间:2014-07-15 11:54:20

标签: android android-actionbar searchview

我有一个带有SearchView的ActionBar。

我希望搜索视图始终处于“打开”状态(展开)。使用

可以做到这一点
mSearchView.setIconifiedByDefault(false);

但由于某种原因,它会将搜索图标移到文本区域之外: enter image description here

如果我不使用 setIconifiedByDefault(),看起来我希望它在展开时看起来: enter image description here

然后它会折叠成背面的搜索图标,也是

MenuItemCompat.expandActionView(searchItem);

似乎没有帮助。

有没有办法达到我想要的目的?

3 个答案:

答案 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"
    />