我有一个简单的游戏对象(主UI对象(,其OnApplicationPause
在调试日志中打印出Pause
状态(true/false)
。当我在 android 上run
它,然后按 Home Button
离开应用程序时,我看到该OnApplicationPause()
被连续调用twice
,具有相同的pauseStatus
(true(。当我重新打开应用程序时也会发生同样的情况:OnApplicationPause
被调用两次,状态为 false Pause
。
为什么它被调用两次,我可以避免它吗?我做错了什么吗?
我还尝试创建一个单独的游戏对象,其中包含相同的调试代码。问题不会发生在那里 - 仅在我的主要 UI 对象中。
您是否 100% 确定包含 OnApplicationPause()
方法的脚本在发生暂停时不会在场景中出现两次? 或出现在DontDestroyOnLoad
游戏对象的前一个场景中?
发生暂停时,将在每个活动MonoBehaviour
上调用 OnApplicationPause。
因此,如果您自己不手动调用它,则有两个Debug.Log
意味着两个脚本实例正在运行。