停止在Action Bar appcompat中设置为ActionView的进度条

时间:2014-04-29 07:29:35

标签: android android-actionbar android-appcompat

你好,我在android中使用appcompat库制作了动作栏。它看起来像

enter image description here

当我点击刷新菜单项时,我在这里显示进度条,它显示完美

menuItem.setActionView(R.layout.progressbar);
menuItem.expandActionView();

enter image description here

progressbar.xml

<?xml version="1.0" encoding="utf-8"?>
<ProgressBar xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/progressBar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">

</ProgressBar> 

但是我在异步任务中完成任务后,我正在执行以下onPostExecute停止它,如下所示,这不起作用,意味着进度条在此之后仍然执行。我希望隐藏它并在此过程完成后显示刷新按钮,但它当前不起作用

menuItem.collapseActionView();
menuItem.setActionView(null);

知道这是错的吗?

1 个答案:

答案 0 :(得分:3)

我猜,你已经忘记了行动条无效。如果你,那么只需致电invalidateOptionsMenu()。并看到魔术;)

menuItem.collapseActionView();
menuItem.setActionView(null);
YourActivity.this.invalidateOptionsMenu();