게임 개발/유니티C#

유니티 C# 양수만 입력되게 하기.

UniCoti(유니코티) 2022. 8. 17.
반응형

https://kmong.com/self-marketing/556080/xcCLzhi3mY

 

당신이 손해볼 구글링 시간을 없애다 - 유니티 비법서 - 크몽

UniCoti 전문가의 전자책 서비스를 만나보세요. <p>이 책은 유니티를 하면서 생기는 여러 오류에 대한 해결책과</p>...

kmong.com

(174가지 주제의 유니티 기능 정리, 오류 해결법 + 무제한 질문권 전자책. 15000원)

 

if(EventSystem.current.currentSelectedGameObject != this.gameObject) {
            if(int.Parse(tex.text) < 0) {
                tex.text = "";
            }
}

첫 if문은 이 오브젝트가 현재 선택되고 있는지 확인한다.

두번째 if문은 이 오브젝트의 텍스트를 인트로 변환한 값이 0보다 작은지

확인하고 있다.

 

이 코드의 목적은 선택되지 않을때(값을 입력하고 엔터를 눌렀을때)

값이 0보다 작다면

텍스트를 아무것도 없게 비워놓는것입니다.

 

하지만 이코드의 단점은 

text가 아무것도 없을때 

int.parse를 쓴다면 에러가 난다는 것인데,

딱히 최적화적인 요소에서는 에러가 나지 않는것과 다르지 않으니

무시하셔도 되고

if(EventSystem.current.currentSelectedGameObject != this.gameObject) {
            if(tex.text == "3") {
                tex.text = "";
            }
        }
 
이런식으로 문자열을 체크하면 에러가 안나긴 합니다.
다만 부등호를 사용할 수 없기에 
특별한 경우만 사용할 수 있을것 같습니다.

도움이 되었길 바라며,

 

끝.

반응형

댓글

💲 추천 글