Android: 在TabHost活动中显示不确定进度条

35

我知道在Android中使用以下代码应该可以显示和隐藏一个小圆形进度条:

requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
setProgressBarIndeterminateVisibility(true);
setProgressBarIndeterminateVisibility(false);

问题在于我正在使用TabHost,而且我需要能够从其中一个“子”活动中执行此操作。我该如何解决这个问题?
我在互联网上找到了这个问题,但是正如你所看到的,它没有得到答复。
2个回答

28

我找到了答案。在你的父Activity中,在进行任何操作之前,你需要调用requestWindowFeature方法,然后在你的子Activity中,调用getParent().setProgressBarIndeterminateVisibility(true/false);即可。


谢谢 - 这是一种非常有用且不会打扰用户的方式,可以显示某些事情正在发生。 - hwrdprkns

9

仅为完整性而言:

如果任务在与主 UI 线程不同的线程中运行,您可以执行以下操作:

    this.runOnUiThread(new Runnable() {
        public void run() {
            getParent().setProgressBarIndeterminateVisibility(mToggleIndeterminate);
        }
    });

1
好观点!这是一个不应该被忽视的微妙之处。 - SMBiggs

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接