「Unity/ライフサイクル」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→フォア・バックの切り替え判定) |
|||
行23: | 行23: | ||
if (status) | if (status) | ||
{ | { | ||
− | Debug.Log(" | + | Debug.Log("OnApplicationPause pause"); |
} | } | ||
else | else | ||
{ | { | ||
− | Debug.Log(" | + | Debug.Log("OnApplicationPause resume"); |
} | } | ||
} | } | ||
行35: | 行35: | ||
注意: | 注意: | ||
OnApplicationPauseは、起動時、Start()、よりも早く動作します。 | OnApplicationPauseは、起動時、Start()、よりも早く動作します。 | ||
+ | ==OnApplicationFocus挙動== | ||
+ | <pre> | ||
+ | private void OnApplicationFocus(bool hasFocus) | ||
+ | { | ||
+ | Debug.Log("OnApplicationFocus " + hasFocus); | ||
+ | } | ||
+ | </pre> | ||
==シーン切り替え== | ==シーン切り替え== |
2021年10月3日 (日) 15:55時点における版
ライフサイクル
だいたいこんな感じ
Reset() Awake() OnEnable() Start() FixedUpdate() Update() OnDisable() OnDestroy()
詳細は
公式:https://docs.unity3d.com/ja/2020.1/Manual/ExecutionOrder.html
Unity初心者講座:ライフサイクルを正しく覚える https://watablog.tech/2019/09/20/post-492/
フォア・バックの切り替え判定
void OnApplicationPause(bool status) { if (status) { Debug.Log("OnApplicationPause pause"); } else { Debug.Log("OnApplicationPause resume"); } }
androidとiOS両方で機能することを確認。
注意: OnApplicationPauseは、起動時、Start()、よりも早く動作します。
OnApplicationFocus挙動
private void OnApplicationFocus(bool hasFocus) { Debug.Log("OnApplicationFocus " + hasFocus); }
シーン切り替え
OnDisable() OnDestroy()
シーン切替時に、上記は実行されるが、以下は、シーン切替時には実行されず、停止、終了したときのみ実行される。
OnApplicationPause OnApplicationQuit