为了账号安全,请及时绑定邮箱和手机立即绑定

unity 3D 安卓上退出确认的方法?

unity 3D 安卓上退出确认的方法?

慕的地8271018 2018-10-01 13:09:38
我将unity上做的项目导入到安卓上面  可以按返回键退出。但是按一下就会退出。如何实现按两下才退出的那种效果  退出用的是这个代码 function Update () {     if(Input.GetKey(KeyCode.Escape)){         Application.Quit();     } }     现在的软件... 我将unity上做的项目导入到安卓上面  可以按返回键退出。但是按一下就会退出。如何实现按两下才退出的那种效果 退出用的是这个代码function Update () {    if(Input.GetKey(KeyCode.Escape)){        Application.Quit();    }}    现在的软件不是都是按返回键之后都会有一行小字提示“再按一次退出”这样的  如何实现呢还有就是我拉进去的按钮 有两个按钮,用来控制一个小人移动的,但是我的按钮在手机屏幕上的位置如何固定住。就是我如何让手机横屏和竖屏的时候操控的按钮都在屏幕的接近左下和右下角。不能太接近就是了。
查看完整描述

1 回答

?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

问题一:
我认为可以设定一个int值比如escapeTimes初始值设为1;当检测到“Input.GetKey(KeyCode.Escape)”后escapeTimes++;然后
if(Input.GetKey(KeyCode.Escape) && escapeTimes > 1)
{
       Application.Quit();
}
最后通过协同函数检测如果按两次返回键时间间隔过长,则重置。具体代码(C#)如下:
int escapeTimes = 1;
void Update()
{
   if(Input.GetKey(KeyCode.Escape))
   {
       //这个地方可以写“再按一次退出”的提示

       escapeTimes++;

       StartCoroutine("resetTimes");
       if(escapeTimes > 1)
       {
           Application.Quit();
       }

   }

}
IEnumerator resetTimes()
{
   yield return new WaitForSeconds(1);
   escapeTimes =1;
}
关于JavaScript怎么用Coroutine协同函数你可以百度一下,转换一下就行,很简单。

问题二:
这应该是关于UI分辨率适配的问题。你可以试一下NGUI插件,我认为是一款很好的UI插件,完全可以代替Unity自身的UI。NGUI可以使用锚点“Anchor”,可以将UI固定在任意需要的位置。

完全手写,木有功劳有苦劳哦~~

查看完整回答
反对 回复 2018-10-11
  • 1 回答
  • 0 关注
  • 1316 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信