初めてのUnity

最近はUnityを触り始めました。

 

なんとScriptからGameObjectを取得するとかいう初歩的なところでつまづきましたので。。。めもめも

 

やりたかったのは、ボタンを押すとGUITextを取得して中のTextをボタンの値に更新するということ。

押したボタンのテキストを取得する

ボタンの取得

    Button button = this.GetComponent <Button>();

(<button>を小文字のままにするとになってまう)

Button UIの中のテキストを取得する

GameObjectであるButtonの子要素を取得するためにはtransformにアクセスするらしい。その中のtext Componentにアクセスするので

    GameObject buttonNumber = button.transform.FindChild ("Text").gameObject;
    string PushButton = buttonNumber.GetComponent ().text;
    //Debug.Log (PushButton);

みたいな風に書くらしい。

GUITextの更新

GameObjectの取得

Hierarchyの中で名付けられている名前で取得できる

    NumbersCan = GameObject.Find("Numbers");

NumbersCanはGUITextなのでこの中のText Componentにアクセスする必要がある。これを更新するには

    numbers = NumbersCan.GetComponent();
	numbers.text = numbers.text + PushButton;

こんな感じ。

 

 

 

GUITextとText Componentの違いがなかなか理解できなかった。