码迷,mamicode.com
首页 > 编程语言 > 详细

[Unity3D]再次点击以退出程序

时间:2015-03-02 14:47:49      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:

[Unity3D]再次点击以退出程序

本文介绍为Android应用编写点击返回按键时的"再次点击以退出程序"的方法。

 

+BIT祝威+悄悄在此留下版了个权的信息说:

下面是一个测试用户双击手机屏幕速度的app,拿来展示"Click again to quit app"这个功能是很清晰的。这个app的源码包在(http://pan.baidu.com/s/1dDIobN7),APK在(http://pan.baidu.com/s/1hq1mV0S)。欢迎下载试用。

技术分享

+BIT祝威+悄悄在此留下版了个权的信息说:

下面详述制作步骤。你也可以直接下载源码包,复制里面的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 }

 

检测返回键 

+BIT祝威+悄悄在此留下版了个权的信息说:

上面代码中的 Input.GetKeyDown(KeyCode.Escape); 既能够检测PC键盘的Esc键,又能够检测Android手机的返回按键。

[Unity3D]再次点击以退出程序

标签:

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!