728x90
배열 없이 버튼 클릭하여 출력해보기
UIMain
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using UnityEngine;
using UnityEngine.UI;
public class Test01UIMain : MonoBehaviour
{
public enum eButtonType
{
Blue, Red, Green, Purple
}
[SerializeField]
private Button btnBlue;
[SerializeField]
private Button btnRed;
[SerializeField]
private Button btnGreen;
[SerializeField]
private Button btnPurple;
public System.Action<eButtonType> onButtonClicked;
public void Init()
{
this.btnBlue.onClick.AddListener(() => {
Debug.Log("blue 버튼 클릭 됨!");
this.onButtonClicked(eButtonType.Blue);
});
this.btnRed.onClick.AddListener(() =>
{
Debug.Log("red 버튼 클릭 됨!");
this.onButtonClicked(eButtonType.Red);
});
this.btnGreen.onClick.AddListener(() =>
{
Debug.Log("green 버튼 클릭 됨!");
this.onButtonClicked(eButtonType.Green);
});
this.btnPurple.onClick.AddListener(() =>
{
Debug.Log("purple 버튼 클릭 됨!");
this.onButtonClicked(eButtonType.Purple);
});
}
}
SceneMain
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Test01Main : MonoBehaviour
{
[SerializeField]
private Test01UIMain uiMain;
void Start()
{
//uiMain에 입력된 버튼 타입을 가져와서 출력
this.uiMain.onButtonClicked = (btnType) =>
{
Debug.Log(btnType);
};
this.uiMain.Init();
}
}
'KDT > 유니티 심화' 카테고리의 다른 글
23/09/04 LearnUGUI 종합(Button,On/Off,Tab,Slider) (0) | 2023.09.04 |
---|---|
23/09/04 LearnUGUI 버튼2 (배열로 관리) (0) | 2023.09.04 |
23/09/03 [주말] HeroShooter 총알 발사 (1) | 2023.09.03 |
23/08/31 Input System 연습 (0) | 2023.08.31 |
23/08/30 HeroShooter 타이틀 (비동기 씬 전환) (0) | 2023.08.30 |