我想在加載時(即不在對話框中)顯示ProgressBar微調器來代替另一個View。爲了清楚起見,我只希望ProgressBar替換一個View,而不是接管Window或Activity。如何顯示內聯ProgressBar微調器?
我能想到的最佳解決方案是在佈局中放置ProgressBar和實際視圖,並將ProgressBar可見性設置爲可見,並將視圖可見性設置爲「無效」。加載後,我換了他們的知名度。
這將工作,但我希望有一個更優雅的解決方案。有什麼建議麼?
我想在加載時(即不在對話框中)顯示ProgressBar微調器來代替另一個View。爲了清楚起見,我只希望ProgressBar替換一個View,而不是接管Window或Activity。如何顯示內聯ProgressBar微調器?
我能想到的最佳解決方案是在佈局中放置ProgressBar和實際視圖,並將ProgressBar可見性設置爲可見,並將視圖可見性設置爲「無效」。加載後,我換了他們的知名度。
這將工作,但我希望有一個更優雅的解決方案。有什麼建議麼?
我能想到的最好的解決辦法是把既有進度和 實際觀的佈局,與進度可見性設置爲 可見,查看可見性設置爲不見了。加載後,我換了 他們的知名度。
這是一個完全合法的解決方案。如果您不喜歡它,可以嘗試以下操作:
添加一個空的容器佈局(LinearLayout,RelativeLayout等),您可以在其中放置ProgressBar
或View
,後面跟着這個佈局。找到這個容器中的對話框的視圖中:
container = (_____Layout) dialogView.findViewById(R.id.container_id);
創建ProgressBar
和下面的View
loading
結束後:
ProgressBar pb = ....;
View v = ....;
在你的代碼,當loading
開始:
container.addView(pb);
一旦loading
完成:
container.removeAllViews();
container.addView(v);
如果您恰好使用AdapterView,則可以調用setEmptyView()方法。示例見here。