可以說我正在一個片段中創建並顯示一個GraphView圖形(有關代碼的特定示例,請參見:Android/Java creating a helper class to create graphs),其中是實際創建對象的正確位置,如GraphView對象,或SensorManager對象?Android片段onResume與onCreateView
我見過有些人把這些物品(例如sensorManager = (SensorManager) getContext().getSystemService(Context.SENSOR_SERVICE)
)放在onResume
,其他人放在onCreateView
。它對CPU/RAM的使用有很大的影響嗎?
我明白onResume
和onCreateView
在不同的時間被調用,但可以說我創造onResume
這些對象,將我只是每次用戶瀏覽頁面,或按時間結束了一個全系列同一對象的回到頁面?或者android覆蓋現有的對象,因此保持內存使用情況?
或者將這些行放在onCreateView
這樣最好,因此當用戶導航到頁面時設備不需要不斷重新創建對象(假設代碼在onResume
中,則會發生這種情況)?
無論你在哪裏把代碼的事情,它總是會被調用。 'onResume'發生在'onCreateView'後面 –
但看着片段生命週期(https://developer.xamarin.com/guides/android/platform_features/fragments/part_1_-_creating_a_fragment/Images/fragment_lifecycle.png),它看起來像'onCreateView'只會在視圖被破壞後纔會調用(例如,如果我關閉了應用程序)。而'onResume'會在暫停/停止事件後被調用(例如,如果我按回家並使用另一個應用程序一段時間,然後返回,或者如果我導航到另一個片段然後按回按鈕) – Simon
我在看官方android片段生命週期,而不是Xamarin –