Developing > Unity
[C#] Dodawanie funkcjonalności przycisku z poziomu kodu
(1/1)
Sawik:
Ostatnio na innym forum dostałem PW z pytaniem jak dodać własną funkcję do OnClick przycisku z poziomu kodu, nic prostszego. Jest to bardziej quicktip, ale nie mamy tutaj odpowiedniego działu na to.
--- Kod: ---using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class UIclicktest : MonoBehaviour {
public Button EndGameButton;
void EndGame()
{
Application.Quit ();
}
void Start () {
EndGameButton = GameObject.Find("EndGame").GetComponent<Button>();
EndGameButton.onClick.AddListener(()=>{EndGame();});
}
}
--- Koniec kodu ---
Po kolei.
--- Kod: ---using UnityEngine.UI;
--- Koniec kodu ---
Musimy dodać ten namespace żeby mieć dostęp do metod i klas opisujących UI.
--- Kod: ---public Button EndGameButton;
--- Koniec kodu ---
Tworzymy zmienną w której będziemy przechowywali odnośnik do naszego przycisku.
--- Kod: ---void EngGame()
--- Koniec kodu ---
- Prosta metoda zamykająca aplikację. Warto wspomnieć że działa tylko po skompilowaniu do pliku wykonywalnego.
--- Kod: ---EndGameButton = GameObject.Find("EndGame").GetComponent<Button>();
--- Koniec kodu ---
Wyszukujemy obiekt w scenie, ja swój nazwałem EndGame, znaleziony obiekt będzie GameObject'em, dlatego też od razu pobieramy jego komponent "Button".
--- Kod: ---EndGameButton.onClick.AddListener(()=>{EndGame();});
--- Koniec kodu ---
W końcu dodajemy swoją metodę do listy.
Nawigacja
Idź do wersji pełnej