1. 程式人生 > >[Unity3D]再次點選以退出程式

[Unity3D]再次點選以退出程式

原文: http://www.cnblogs.com/bitzhuwei/p/unity3d-Click-again-to-quit-app.html

本文介紹為Android應用編寫點選返回按鍵時的"再次點選以退出程式"的方法。

下面詳述製作步驟。你也可以直接下載原始碼包,複製裡面的TipToQuitApp物件,即粘即用。

建立uGUI

建立一個Text物件。

設定其各項屬性如下圖所示。

這裡有個指令碼ClickTwiceToQuitApp.cs,其程式碼如下。

複製程式碼
 1 using UnityEngine;
 2 using System.Collections;
3 4 public class ClickTwiceToQuitApp : MonoBehaviour { 5 6 public UnityEngine.UI.Text tipTextBox; 7 public string tip = "Click again to quit app"; 8 public float fadingSpeed = 1; 9 private bool fading; 10 private float startFadingTime; 11 private Color originalColor;
12 private Color transparentColor; 13 14 // Use this for initialization 15 void Start() 16 { 17 originalColor = tipTextBox.color; 18 transparentColor = originalColor; 19 transparentColor.a = 0; 20 tipTextBox.text = tip; 21 tipTextBox.color = transparentColor;
22 } 23 24 // Update is called once per frame 25 void Update() 26 { 27 if (Input.GetKeyDown(KeyCode.Escape)) 28 { 29 if (startFadingTime == 0) 30 { 31 tipTextBox.color = originalColor; 32 startFadingTime = Time.time; 33 fading = true; 34 } 35 else 36 { 37 Application.Quit(); 38 } 39 } 40 41 if (fading) 42 { 43 tipTextBox.color = Color.Lerp(originalColor, transparentColor, (Time.time - startFadingTime) * fadingSpeed);//顏色以線性速度透明掉 44 45 if (tipTextBox.color.a < 2.0 / 255) 46 { 47 tipTextBox.color = transparentColor; 48 startFadingTime = 0; 49 fading = false; 50 } 51 } 52 } 53 }
複製程式碼

檢測返回鍵 

上面程式碼中的 Input.GetKeyDown(KeyCode.Escape); 既能夠檢測PC鍵盤的Esc鍵,又能夠檢測Android手機的返回按鍵。