2013-08-27 57 views
1

我想在加载时(即不在对话框中)显示ProgressBar微调器来代替另一个View。为了清楚起见,我只希望ProgressBar替换一个View,而不是接管Window或Activity。如何显示内联ProgressBar微调器?

我能想到的最佳解决方案是在布局中放置ProgressBar和实际视图,并将ProgressBar可见性设置为可见,并将视图可见性设置为“无效”。加载后,我换了他们的知名度。

这将工作,但我希望有一个更优雅的解决方案。有什么建议么?

回答

2

我能想到的最好的解决办法是把既有进度和 实际观的布局,与进度可见性设置为 可见,查看可见性设置为不见了。加载后,我换了 他们的知名度。

这是一个完全合法的解决方案。如果您不喜欢它,可以尝试以下操作:

添加一个空的容器布局(LinearLayout,RelativeLayout等),您可以在其中放置ProgressBarView,后面跟着这个布局。找到这个容器中的对话框的视图中:

container = (_____Layout) dialogView.findViewById(R.id.container_id); 

创建ProgressBar和下面的Viewloading结束后:

ProgressBar pb = ....; 

View v = ....; 

在你的代码,当loading开始:

container.addView(pb); 

一旦loading完成:

container.removeAllViews(); 
container.addView(v);