我正在尝试在动作栏中显示进度栏,而不是刷新菜单项。但是,当我当前按"刷新"按钮时,它会消失,但是进度栏替换了动作栏标题,而不是出现刷新按钮的位置。
这是我的两个.xml文件:
-
菜单项:
<item android:id="@+id/menu_refresh" android:icon="@drawable/ic_menu_refresh" android:visible="true" android:orderInCategory="0" android:showAsAction="ifRoom|collapseActionView" android:actionLayout="@layout/action_progress_bar" android:title="@string/refresh" android:titleCondensed="@string/refresh"/>
-
进度栏布局:
<?xml version="1.0" encoding="utf-8"?> <ProgressBar xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="32dp" android:layout_height="32dp" > </ProgressBar>
我发现了问题所在。为了使进度栏出现而不是菜单项,它一定不能具有CollapseActionView标志。将其删除,并将逻辑移至代码(以及使用Easy SetactionView方法)
这是默认的actionlayout行为,而afaik您无法更改它。相反,您可以尝试使用"单击"按钮并从代码中替换条件。
更新:
看一下ActionBarCompat样本项目。(新项目/Android示例项目)。