你好,我在android中使用appcompat库制作了动作栏。它看起来像
当我点击刷新菜单项时,我在这里显示进度条,它显示完美
menuItem.setActionView(R.layout.progressbar);
menuItem.expandActionView();
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);
知道这是错的吗?
答案 0 :(得分:3)
我猜,你已经忘记了行动条无效。如果你,那么只需致电invalidateOptionsMenu()
。并看到魔术;)
menuItem.collapseActionView();
menuItem.setActionView(null);
YourActivity.this.invalidateOptionsMenu();