我正在尝试在Unity中创建一个退出按钮,但是当我将我的脚本添加到按钮并单击它时,它就不会退出。
这是我的C#脚本:
using UnityEngine;
using System.Collections;
public class Quit_App : MonoBehaviour {
void OnClick() {
Application.Quit();
}
}
我已经创建了它并使用UI分配给画布,我使用Button(Script)
框来使用OnClick()
框执行此代码。
在那里,我使用字符串名称将其选为object MyButton
和Quit_App()
函数。
答案 0 :(得分:1)
您的脚本假设调用OnClick方法会神奇地检测到点击,但事实并非如此。
您需要在场景中添加一个菜单管理器脚本,公开要绑定到Button组件的公共方法。
脚本MenuManager附加到MenuManager游戏对象:
MenuManager脚本中的代码非常简单:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MenuManager : MonoBehaviour {
public void ExitNow()
{
Application.Quit();
}
}
我使用fully functional implementation here上传了该软件包。
答案 1 :(得分:0)
搜索后,我发现onclick不是MonoBehaviour的成员,请查看以下链接上的OnMouseDown http://docs.unity3d.com/ScriptReference/MonoBehaviour.OnMouseDown.html
答案 2 :(得分:0)
我找到了解决这个问题的半解决方案。我使用这个脚本,当我按下退出按钮时,我可以退出。
using UnityEngine;
using System.Collections;
public class NewBehaviourScript : MonoBehaviour {
// Use this for initialization
void Start () {
if (Input.GetKey("escape"))
Application.Quit();
}
// Update is called once per frame
void Update () {
if (Input.GetKey("escape"))
Application.Quit();
}
}
答案 3 :(得分:0)
首先,此答案假设您的代码有效,唯一的问题是Application.Quit ()
命令无法执行。
在 Unity编辑器中测试应用程序时,Application.Quit ()
命令不起作用(例如,通过按“播放”按钮)。它将关闭 Unity编辑器。
要进行测试,请转到“文件/构建和运行”菜单。
这将构建并执行项目,并且Application.Quit()
将被正确执行。