簡體   English   中英

如何在方向更改時處理活動?

[英]How to handle Activity when Orientation changes?

我正在編寫一個活動,它從服務器加載數據並使用ArrayAdapter將其顯示為列表。 為此,我正在顯示一個進度對話框,即加載,同時它從服務器加載所有數據。 然后我在處理程序中關閉對話框。 我的問題是,當我改變方向時,再次顯示進度對話框,這是不需要的,因為所有數據都已顯示?

我會說你有兩個選擇:
你強迫你的活動不能改變方向:

<activity android:name="MainActivity" android:configChanges="keyboardHidden|orientation"> 

在您的清單( 文檔 )中,它將告訴系統您希望自己處理方向更改,在這種情況下,您將不會執行任何操作。 但是,您寧願在onPause()onSaveInstanceState()添加一些代碼,因為當您接到電話時,Android可能會中斷此活動。 所以你需要處理一些節省。

或者,您選擇在已顯示對話框或后台線程運行時阻止顯示對話框。 這很簡單,您可以使用AsyncTask作為下載部分,因為您可以使用AsyncTask.getStatus來返回任務的狀態 如果它已處於完成狀態,則必須取消該對話框。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM