背景任務(wù),進(jìn)度對(duì)話框,方向改變-有任何100%的工作解決方案嗎?我在后臺(tái)線程中從internet下載一些數(shù)據(jù)(我使用AsyncTask)并在下載時(shí)顯示進(jìn)度對(duì)話框。方向改變,活動(dòng)重新啟動(dòng),然后我的AsyncTask就完成了-我想要取消進(jìn)度對(duì)話框并啟動(dòng)一個(gè)新的活動(dòng)。但是,調(diào)用disunsDialog有時(shí)會(huì)引發(fā)異常(可能是因?yàn)樵摶顒?dòng)已被銷毀,而新的活動(dòng)尚未啟動(dòng))。處理這類問(wèn)題的最佳方法是什么(從后臺(tái)線程更新UI,即使用戶更改了方向)?谷歌是否有人提供了“官方解決方案”?
3 回答

一只斗牛犬
TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超2個(gè)贊
接受的答案很有幫助,但沒(méi)有進(jìn)度對(duì)話框。
幸運(yùn)的是,我創(chuàng)造了一個(gè)帶有進(jìn)度對(duì)話框的AsyncTask的極其全面和工作的示例!
- 旋轉(zhuǎn)工作,對(duì)話框存活下來(lái)。
- 您可以通過(guò)按后退按鈕來(lái)取消任務(wù)和對(duì)話框(如果您想要這種行為的話)。
- 它使用碎片。
- 當(dāng)設(shè)備旋轉(zhuǎn)時(shí),活動(dòng)下面的片段的布局會(huì)發(fā)生適當(dāng)?shù)淖兓?/li>
- 3 回答
- 0 關(guān)注
- 378 瀏覽
添加回答
舉報(bào)
0/150
提交
取消