簡體   English   中英

按下按鈕時如何進行GUI彈出?

[英]How do I make a GUI popup when I press a Button?

我想知道每當我點擊按鈕時如何使用onClick()或類似方法制作GUI彈出窗口? 這是我目前的代碼。 我正在嘗試將代碼實現到我的商店腳本中。 玩家按下的按鈕是一個表示商店的按鈕。 當玩家按下名為Store的按鈕時,腳本將顯示實際的商店。 商店不是一個單獨的場景。 它在一個場景中。

    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插槽。 您還應該在將Button單擊到shopToShow插槽時顯示UI。

Unity UI 教程為您服務..

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM