【发布时间】:2019-01-02 00:25:29
【问题描述】:
我正在使用 Unity 2019.1.1a,我相信它仍处于测试阶段。我正在设计一个2D游戏。 无论如何,我已将所有 UI 元素存储在画布内的一个空游戏对象中。
Quit-UI 是一个空的游戏对象。我从一开始就将其设置为非活动状态,这使得所有 GUI 都按预期消失。
[Header("UI Quit Controls")]
[SerializeField]
private GameObject quitImg;
[SerializeField]
private Button exit, resume;
private void Start()
{
player = GetComponent<Rigidbody2D>();
quitImg.SetActive(false);
}
quitImg 在我的检查器中设置为空游戏对象 Quit-UI。
Quit-BG 是我的 Red-ish UI 背景图像,Quit-FG 是我的黑色前景图像,而 QuitTxt 实际上是我的文本图像“Do you wish to quit”,而不是文本 UI。
当按下 Escape 时,此 UI 在更新功能内设置为活动状态。此操作显示所有相关 UI,因为游戏对象设置为 true:
void Update()
{
if (Input.GetKeyDown(KeyCode.Escape))
{
quitImg.SetActive(true);
}
}
我将按钮 OnClick() 设置为我的 PlayerMove 脚本脚本中的函数。 退出游戏按钮:
public void ExitGame()
{
SceneManager.LoadScene(1);
}
恢复游戏按钮:
public void ResumeGame()
{
quitImg.SetActive(false);
exit.enabled = false;
resume.enabled = false;
}
所以我的问题是按钮对点击没有反应。为什么会发生这种情况,我该如何解决?
【问题讨论】: