您的位置:首页 > 移动开发 > Unity3D

小译UnityAPI-OnApplicationFocus,OnApplicationPause,OnApplicationQuit

2016-04-15 20:26 871 查看
MonoBehaviour.OnApplicationFocus 当程序焦点

官方描述:



译:

当玩家获得或失去焦点时,发送给所有游戏物体。

OnApplicationFocus 可以作为协同程序,在函数中简单地使用yield语句就行。如果它被应用为一个协同程序,它将作为参考,在最初两次框架:第一作为一个早期的通知和第二次在正常的协同程序更新步骤之间。

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
public bool paused;
void OnGUI() {

//如果pause为true
//则GUI在(100,100)显示一个20*30的label("Game paused")
if (paused)
GUI.Label(new Rect(100, 100, 50, 30), "Game paused");

}
//获得或失去焦点,将focusStatus赋值给paused
void OnApplicationFocus(bool focusStatus) {
paused = focusStatus;
}
}


MonoBehaviour.OnApplicationPause 当程序暂停

官方描述:



译:

当玩家想暂停时发送到所有的游戏物体。

OnApplicationPause 可以作为协同程序,在函数中简单地使用yield语句就行。如果它被应用为一个协同程序,它将作为参考,在最初两次框架:第一作为一个早期的通知和第二次在正常的协同程序更新步骤之间。

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
public bool paused;
void OnGUI() {
//如果pause为true
//则GUI在(100,100)显示一个20*30的label("Game paused")
if (paused)
GUI.Label(new Rect(100, 100, 50, 30), "Game paused");

}
//玩家想暂停时,将pauseStatus赋值给paused
void OnApplicationPause(bool pauseStatus) {
paused = pauseStatus;
}
}


MonoBehaviour.OnApplicationQuit 当程序退出

官方描述:



译:

在应用被退出之前发送给所有的游戏物体。

当用户停止播放模式时在编辑器中调用。当网页视图被关闭时,在网页播放器中调用。

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
//当要退出应用时,暂存游戏数据
void OnApplicationQuit() {
PlayerPrefs.Save();
}
}


注意,iOS应用程序通常是暂停,不是退出。你应该在玩家设置中的iOS编译器中标记Exit on Suspend(不懂,应该是个按钮),这会使游戏退出而不是暂停,否则你可能会看不到这个调用。如果Exit on Suspend不标记,应该使用OnApplicationPause函数代替。

欢迎关注我的微信个人订阅号



每天多学一点0.0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: