zoukankan      html  css  js  c++  java
  • [Unity3D]再次点击以退出程序

    [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手机的返回按键。

  • 相关阅读:
    phpfpm进程数设置多少合适
    GitLab的安装及使用教程
    男人的中年危机坏在哪?(转载)
    让敏捷落地,从“认识自我”开始
    优化你的架构设计
    工作中的那点事儿是工作经验,还是思路给了你生存的能力(原创)
    窗口过程处理WndProc遇到的问题
    CodeBlocks 10.0+OpenCV 2.4.0配置方法
    OpenCV在VS2010下永久性配置
    Win8下的STCISP下载问题解决
  • 原文地址:https://www.cnblogs.com/bitzhuwei/p/unity3d-Click-again-to-quit-app.html
Copyright © 2011-2022 走看看