유니티 UI 이미지 변경 스크립트
작성자 정보
- 마스터 작성
- 작성일
컨텐츠 정보
- 335 조회
- 목록
본문
1. 준비물
바꿀 이미지를 처리할 변수, 배열이어도 상관없음
public Sprite[] numberImages;
변경할 게임오브젝트 변수, 배열이어도 상관없음
public GameObject firstTome;
public GameObject SecondTome;
2.유니티에서 스크립트 추가 후 오브젝트 및 이미지 추가하기
3.코드 처리
firstTome.GetComponent<Image>().sprite = numberImages[0];
SecondTome.GetComponent<Image>().sprite = numberImages[1];
연결한 게임오브젝트에서 GetComponent<Image>().sprite를 사용하여 이미지를 변경 할 수 있다.
numberImages[0]에는 바꿀 이미지의 배열이 담겨 있어 내가 원하는 이미지의 넘버를 넣어 바꿀 수 있다.
4.전체 코드
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class GameManager : MonoBehaviour
{
public GameObject firstTome;
public GameObject SecondTome;
public Sprite[] numberImages;
[SerializeField]
private float time = 300.0f;
int intTime;
void Update()
{
//시간 감소
time -= Time.deltaTime;
intTime = (int)time /5;
string strTime = intTime.ToString();
for(int i = 0; i<strTime.Length; i++)
{
char n = strTime[i];
if (strTime.Length == 1)
{
firstTome.GetComponent<Image>().sprite = numberImages[0];
SecondTome.GetComponent<Image>().sprite = numberImages[strTime.Length -1];
}
else
{
if(i == 0) firstTome.GetComponent<Image>().sprite = numberImages[Convert.ToInt32(n.ToString())];
if(i == 1) SecondTome.GetComponent<Image>().sprite = numberImages[Convert.ToInt32(n.ToString())];
}
}
}
}
관련자료
-
이전
-
다음