我正在對我的應用程序實施一項設置,允許用戶切換主題,當用戶切換主題時,用戶將處於設置活動狀態,並且在任務上方將顯示主屏幕。重新啓動任務中的所有活動
我希望當前activity
在主題更改後重新啓動,但我也希望主屏幕重新啓動,因此當用戶從設置頁返回時,他會看到主屏幕顯示新的活動。
重新啓動當前的activity
is easy,但我該如何強制重新啓動當前的task
中的activities
?
我已經嘗試添加FLAG_ACTIVITY_CLEAR_TOP
/FLAG_ACTIVITY_CLEAR_TASK
到intent
,但它會從task
刪除這些活動,所以當我從設置回擊,我返回到主屏幕,而不是我的應用程序主界面。
謝謝。
用戶返回時重新啓動主要活動是否可以接受?也許,在'onActivityResult'上? –
這是個不錯的主意......我會嘗試一下。 – marmor
我想你知道,系統使用onConfigurationChange來達到這個目的。如果系統語言將被改變 - 你的活動將被重新創建,onConfigurationChange()將被調用,如果你聲明你可以處理這種情況。 我認爲你的情況你應該嘗試做同樣的事情,但是,我不知道如何觸發COnfigurationChange由於你的內部應用程序設置。如果可以在應用程序內部這樣做 - 我認爲這將是一個完美的解決方案。 – AlexN