nab*_*don 4 android android-toolbar
这是我的问题:
展开搜索视图并显示弹出菜单后,会出现“添加”项(我认为不应该出现):
然后用后退箭头键返回,如您所见,添加按钮如下:
我正在使用 support:appcompat-v7:25.1.0,这是我的菜单代码:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/app_bar_search"
android:actionViewClass="android.support.v7.widget.SearchView"
android:icon="@drawable/ic_action_search"
android:title="Search"
app:showAsAction="always|collapseActionView"
android:enabled="true"
android:visible="true"
app:actionViewClass="android.support.v7.widget.SearchView"/>
<item android:title="Add"
android:enabled="true"
android:icon="@drawable/ic_action_add"
android:visible="true"
app:showAsAction="ifRoom"
android:id="@+id/add" />
<item android:title="Settings"
android:id="@+id/settings"
app:showAsAction="never"
android:icon="@drawable/ic_action_settings"
android:enabled="true"
android:visible="true" />
<item android:title="Feedback"
android:id="@+id/feedbvack"
app:showAsAction="never"
android:icon="@drawable/ic_action_feedback"
android:enabled="true"
android:visible="true" />
</menu>
Run Code Online (Sandbox Code Playgroud)
我可以将添加按钮 showAsAction 设置为“始终”,但我知道这是不鼓励的。这里有人知道为什么会出现这种行为吗?我怎样才能防止这种情况发生?
提前致谢。
你可以尝试使用这个:
MenuItemCompat.setOnActionExpandListener(searchMenuItem, new MenuItemCompat.OnActionExpandListener() {
@Override
public boolean onMenuItemActionExpand(MenuItem item) {
return true;
}
@Override
public boolean onMenuItemActionCollapse(MenuItem item) {
supportInvalidateOptionsMenu();
//or use invalidateOptionsMenu();
return true;
}
});
Run Code Online (Sandbox Code Playgroud)
因此,当 SearchView 折叠时,工具栏将重新分配项目,并且 ifRoom 项目将可见。我也遇到这个bug,按照这个方法解决了。
| 归档时间: |
|
| 查看次数: |
1624 次 |
| 最近记录: |