按下按钮时如何弹出 GUI?

How do I make a GUI popup when I press a Button?

我想知道如何使用 onClick() 或类似方法在我单击按钮时弹出 GUI?这是我当前的代码。我正在尝试将代码实施到我的商店脚本中。玩家按下的按钮是一个表示商店的按钮。当玩家按下名为 Store 的按钮时,脚本将显示实际的商店。 The Shop 不是一个单独的场景。它在一个场景中。

    using UnityEngine;
using System.Collections;

public class Shop : MonoBehaviour 
{

    public int Money;
    public int Trap = 0;
    public int Weed = 0;

    public GameObject ShopLocation;

    void Start () 
    {

        Money = 100;
        ShopLocation.gameObject.SetActive(false);
    }

    public void Clicked()
    {

    }

    void OnTriggerExit()
    {
        ShopLocation.gameObject.SetActive(false);
    }

    public void trap() 
    {
        if (Money >= 20) {
            Money -= 20;
            Trap += 15;
        } else 
        {
            print ("Not enough money for trap!");
        }


    }

    public void weed()
    {
        if (Money >= 15) {  
            Money -= 15;
            Weed += 10; 
        } else 
        {
            print ("Not enough money for Weed!");
        }
    }
}

Button 组件可用于执行此操作。使用 Button.onClick.AddListener(()=>functionToCall()...).

注册 Button 活动
using UnityEngine.UI;

public class Shop : MonoBehaviour 
{
    public GameObject shopToShow;

    public Button StoreButton;

    void OnEnable()
    {
        //Register Button Events
        StoreButton.onClick.AddListener(() => storeButtonCallBack());

    }

    private void storeButtonCallBack()
    {
        Debug.Log("Shop Button Clicked!");
        shopToShow.SetActive(true);
    }

    void OnDisable()
    {
        //Un-Register Button Events
        StoreButton.onClick.RemoveAllListeners();
    }
}

请记住,您必须从编辑器中创建一个 Button 并将其分配给脚本中的 StoreButton 插槽。您还应该将 UI 放在 Button 被单击时显示到 shopToShow 插槽中。

团结UItutorial给你..