[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手机的返回按键。
![]() |
微信扫码,自愿捐赠。天涯同道,共谱新篇。
微信捐赠不显示捐赠者个人信息,如需要,请注明联系方式。 |
标签:
Unity3D
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)