在操作栏中显示进度栏,而不是刷新菜单项



我正在尝试在动作栏中显示进度栏,而不是刷新菜单项。但是,当我当前按"刷新"按钮时,它会消失,但是进度栏替换了动作栏标题,而不是出现刷新按钮的位置。

这是我的两个.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示例项目)。

最新更新