前提・実現したいこと
Unity2019、C#を利用して、ボタンをクリックした時にメッセージウインドウが現れるようにしたいです。
メッセージウインドウは作成し、Prefab化してあります。
ボタンに紐づけてあるスクリプトでは、メッセージウインドウのPrefabをInstantiateしたのち、それを変数で受けてPrefabの子要素であるTextの文字列を変更するよう書いたつもりです。
発生している問題・エラーメッセージ
前述の方法で、クリックすると「A」と表示されるボタンと「B」と表示されるボタンを作成しました。
しかし、ボタンをクリックするとメッセージウインドウは出現するものの表示される文字列が直前にクリックしていたボタンの内容になってしまいます。(例:1回目に"A"ボタン、2回目に"B"ボタンを押すとメッセージウインドウの文字列は"B"ではなく"A"と表示)
該当のソースコード
C#
1 public void OnClick(){ 2 var Dialog = Instantiate(Dialog, new Vector3( -1.0f, 0.0f, 0.0f), Quaternion.identity); 3 Text NameText = Dialog.transform.GetChild(1).GetComponent<Text>(); 4 NameText.text = this.gameObject.name; 5 }
試したこと
OnClick()中でDebug.Logを実行すると表示してほしい文字列がちゃんと出力されています。
補足情報(FW/ツールのバージョンなど)
Unity 2019.2.6f1
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。