2025年7月25日金曜日

UnityでUIを非表示にする方法一覧と違い

UnityでUI(オブジェクト)を非表示にする方法 は三つあります。

  1. Canvas.enabled=false;
  2. GameObject.SetActive(false);
  3. yourButton.image.color = new Color(1,1,1,0); // 透明にする yourButton.interactable = false; // ユーザー操作も不可にする

GameObject.SetActive(false);を使用したオブジェクトはFindで見つけられません。

解決方法

GameObject.SetActive(false);を使用前にゲームオブジェクトを変数に参照を保持すればアクセスできます。

transformなら非アクティブでもFind取得可能です。

Transform parent = GameObject.Find("ParentObject").transform;

Transform child = parent.Find("MyHiddenChild"); 

GameObject hiddenObj = child.gameObject;



0 件のコメント:

コメントを投稿