[問題] Lifecycle的OnStart問題

看板AndroidDev作者 (信)時間10年前 (2015/09/20 00:12), 編輯推噓1(1015)
留言16則, 7人參與, 最新討論串1/3 (看更多)
根據Android Developers的說明 一個Activity啟動的流程是 OnCreate -> OnStart -> OnResume 其中我看不懂OnStart的用意是什麼? 在官網是說Called when the activity is becoming visible to the user. 但事實上 我將中斷點插入在 OnCreate中途 也可是可以看到Activity 若他指的是元件的話 我要一直到OnResume跑完才會出現 另外還有OnRestart的解釋也很奇妙 Called after your activity has been stopped, prior to it being started again. 他的目的就只有呼叫OnStart嗎? 希望有人可以幫我解答一下 謝謝 ~ ~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.231.182.190 ※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1442679151.A.25E.html

09/20 01:32, , 1F
看你app的使用情境,這些函式都用得到,看你怎麼運用
09/20 01:32, 1F

09/20 11:26, , 2F
我可以把這套流程理解為這只是android的recommend
09/20 11:26, 2F

09/20 11:26, , 3F
事實上我們不一定按照他的步驟?
09/20 11:26, 3F

09/20 13:39, , 4F
你有需要時才override,否則不用特別理他。就像為什
09/20 13:39, 4F

09/20 13:39, , 5F
麼一定要override onCreate() ,因為你要改成自己的la
09/20 13:39, 5F

09/20 13:39, , 6F
yout
09/20 13:39, 6F

09/20 16:20, , 7F
重點是之後Stop再啟動時,只會呼叫onStart不會呼叫onCreate
09/20 16:20, 7F

09/20 16:21, , 8F
這流程不是你控制的,而是os在各activity切換時的流程,
09/20 16:21, 8F

09/20 16:21, , 9F
這些方法是讓你能在這套流程中想做事的時間點去做事
09/20 16:21, 9F

09/21 09:00, , 10F
建議看activity lifecycle的圖表,比較清楚各個呼叫時機
09/21 09:00, 10F

09/21 15:23, , 12F
先onCreate才onStart餒..
09/21 15:23, 12F

09/26 21:04, , 13F
我自己寫Framework的習慣是 onCreate()跑在new Obj()裡面或
09/26 21:04, 13F

09/26 21:04, , 14F
之後馬上 而onStart則是用來通知物件已經可以動作了喔~ 這樣
09/26 21:04, 14F

09/26 21:05, , 15F
兩個時間點很近 但主要是看你做了甚麼事情 事實上要了解這流
09/26 21:05, 15F

09/26 21:06, , 16F
程最快的還是自己Log觀察一遍 不用花心思推導別人的邏輯順序
09/26 21:06, 16F
文章代碼(AID): #1L_Obl9U (AndroidDev)
文章代碼(AID): #1L_Obl9U (AndroidDev)