Application.CancelQuit 取消退出

static function CancelQuit () : void

Description描述

Cancels quitting the application. This is useful for showing a splash screen at the end of a game.

取消退出。这可以用来在退出游戏的时候显示一个退出画面。

This function only works in the player and does nothing in the web player or editor. IMPORTANT: This function has no effect on iPhone. Application can not prevent termination under iPhone OS.

这个函数只工作在播发器中,在web播放器或编辑器中不做任何事。

注意,这个函数在iphone中没有效果,应用程序无法防止在iPhone OS的终止。

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
	public float showSplashTimeout = 2.0F;
	private bool allowQuitting = false;
	void Awake() {
		DontDestroyOnLoad();
	}
	void OnApplicationQuit() {
		if (Application.loadedLevelName.ToLower() != "finalsplash")
			StartCoroutine("DelayedQuit");

		if (!allowQuitting)
			Application.CancelQuit();

	}
	IEnumerator DelayedQuit() {
		Application.LoadLevel("finalsplash");
		yield return new WaitForSeconds(showSplashTimeout);
		allowQuitting = true;
		Application.Quit();
	}
}
// Delays quitting for 2 seconds and 
// 延迟2秒退出。
// loads the finalsplash level during that time.
// 在这段时间内加载退出画面
var showSplashTimeout : float = 2.0;
private var allowQuitting : boolean = false;

function Awake () {
	// This game object needs to survive multiple levels
	// 需要在多个关卡中使用的游戏物体
	DontDestroyOnLoad (this);
}

function OnApplicationQuit () {
	// If we haven't already load up the final splash screen level
	// 如果我们还没有加载到最后的退出画面
	if ( Application.loadedLevelName .ToLower() != "finalsplash")
		StartCoroutine("DelayedQuit");
   
	// Don't allow the user to exit until we got permission in 
	// 如果我们还没有加载到最后的退出画面
	if (!allowQuitting)
		Application.CancelQuit ();
}

function DelayedQuit () {
    Application.LoadLevel ("finalsplash");
   
	// Wait for showSplashTimeout
	// 等待showSplashTimecout
	yield WaitForSeconds (showSplashTimeout);   
	// then quit for real
	// 然后退出
	allowQuitting = true;
	Application.Quit ();
}
Page last updated: 2010-12-15