Programing/UNITY

[Unity] 6.2 UI - 버튼(Button)

바오밥 하단 2020. 5. 6. 05:19

1. 버튼

- 클릭했을 때 일어나는 동작을 정의

- [Add Component] - [Button]으로 추가

- 모바일 게임의 대표적인 Interation 컴포넌트

- Interactable: 상호작용을 할지의 여부. 체크 표시를 풀면 사용하지 않는 상태(Disabled)

- 4가지 상태가 존재

  • Normal: 가만히 있을 때
  • Highlighted: 마우스를 위에 올렸을 때
  • Pressed: 버튼을 눌렀을 때
  • Disabled: 더이상 버튼을 사용하지 못할때

 

- Transition: 버튼의 상태전환을 표시하는 방법

  • None: 상태를 변경해도 아무 효과를 표시하지 않겠다
  • Color Tint: 색깔로 표시하겠다.
  • Sprite Swap: 다른 이미지로 표현.
  • Animation: 애니메이션을 넣음

 

- On Click: 버튼을 눌렀다가 떼었을 때 실행될 내용들을 추가하는 곳

  • +버튼을 누르면 하나의 기능.

 

- 스크립트 짜기 - 버튼을 누르면 text의 점수가 10점씩 오르게 하기

  • UI와 관련된 스크립트를 짤 때는 항상 상단에 'using UnityEngine.UI;'를 써준다.

이러한 코드를 짠 C# 파일을 만들어준 후 text 파일에 스크립트를 컴포넌트로 넣어준다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
 
public class scoretext : MonoBehaviour
{
    int score = 0;
    public void Scoreup(int number) {
        score += number;
        GetComponent<Text>().text = "Score : " + score;
    }
}
 
cs

버튼 On Click()부분을 아래처럼 설정.

 

- 버튼 위에 다른 이미지가 있을 때 버튼 클릭을 막지 않게 하기

  • 이미지의 Image 컴포넌트의 Raycast Target 체크 표시를 없애면 됨.