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

  • 相关阅读:
    fgets()函数读取键盘,去掉换行符或丢弃多余的字符
    c语言gets()函数与它的替代者fgets()函数
    基于京东手机销售数据用回归决策树预测价格
    「我去,这也能行!」令人惊叹的8个深度学习应用
    常见数据结构的 Python 实现(建议收藏)
    60 分钟极速入门 PyTorch
    大牛推荐的15本学习数据分析挖掘的好书
    排名前20的网页爬虫工具
    如何11 周打造全能Python工程师!
    初学者的编程自学指南
  • 原文地址:https://www.cnblogs.com/bitzhuwei/p/unity3d-Click-again-to-quit-app.html
Copyright © 2020-2023  润新知