![](/img/trans.png)
[英]onResume of new Fragment called before onPause in Android Oreo 8.0
[英]Android onResume() called before onPause()?
我對Android Activity的生命周期有一個重大疑問。在正常英語術語中,一旦你完成了Pause,就會完成Resume.But在Activity OnResume的生命周期中,甚至在onPause之前就已經被調用了。這是第一次。是什么這背后的原因?
誰能告訴我為什么它的結構如此?
謝謝。
在通用英語術語中,“恢復”表示某些內容在暫停后再次開始交互時,
但在Android術語中,它表示當Activity處於前台並且用戶開始為活動提供輸入時。 它可能是第一次出現在前景中,甚至在它被暫停之后。 onResume()只是暗示User已經開始與活動進行交互。
onStart()
和onResume()
是兩個不同的術語。 當Activity變得對用戶可見時,將調用onStart()
。 當活動到達前台並且用戶開始與之交互時,將調用onResume()
。
我會舉個例子,
假設您有一些帶有一些移動對象的活動,這里我將描述在不同階段執行的操作,
onStart()-
此處活動開始,而不是動畫。
onResume()-
這里的對象開始動畫。
onPause()-
這里的對象停止動畫,Activity仍然在運行。
OnStop-
此處活動停止。
希望它有助於理解。
參考此圖片:
onStart()之后將調用onResume()。 我認為你注意到的是onResume()。 這詳細描述了活動生命周期:
OnResume:當活動在處於暫停狀態后開始與用戶交互時,將調用此方法。 調用此方法時,活動將移動到活動堆棧的頂部,並且它正在接收用戶輸入 。 如果活動在活動開始接受用戶輸入后需要執行任何任務,則活動可以覆蓋此方法。
您可以看到活動生命周期並確定android的onPause()和onResume()概念是不同的。 我只回答下面的問題..你可以閱讀
誰能告訴我為什么它的結構如此?
從文檔
的onResume()
當活動開始與用戶交互時調用。 此時,您的活動位於活動堆棧的頂部,用戶輸入轉到活動堆棧。 始終跟隨onPause()。
這意味着如果你想要啟動某些東西(例如,當這個活動處於焦點並接收用戶交互時顯示第二個計數的計時器),你可以在onResume()中啟動它。 當此活動成為焦點時,onResume()是我們的回調。 無論此活動是剛剛創建還是暫停后恢復,都應該調用它 。
ya在onStart()之后很好,但在英語方面,簡歷會在暫停后被稱為對嗎? 為什么它以這樣的方式設計出於任何原因?
我認為在這種情況下你不應該采用字面意義。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.