UI按钮参考在检查器中不可见

问题描述

我将我的Button []声明为公开,因此我可以从检查器中引用它

,但是它没有出现在我的检查器中。请帮忙!!!

我尝试重新启动C#并统一导入所有内容...。

公共火箭火箭;

 public Button[] levelButtons; 

void Start()
{
    for(int i=1 ; i<levelButtons.Length ; i++)
    {
      //  if(i + 1 > rocket.level)
        levelButtons[i].SetEnabled(false);
    }
}

解决方法

按钮实际上是GameObject包含组件按钮。在使用它之前,您应该为要创建的数组初始化大小。例如,我编辑了代码:

 //Your array
 public GameObject[] levelButtons; 

 //Object to attach Button
 public GameObject   panelShow;
 //Size for Array
 public int          sizeArrayButton = 5;

 void Awake()
 {
        //Init size for Array
        levelButtons = new GameObject[sizeArrayButton];
        for (int i = 0; i < levelButtons.Length; i++)
        {
            //Create new Object and random for position of Gameobject
            GameObject button = new GameObject();
            button.transform.parent = panelShow.transform;
            button.AddComponent<RectTransform>();
            button.AddComponent<Button>();
            button.transform.position = new Vector3(Random.Range(100,50),Random.Range(100,26),Random.Range(-25,26));
            button.AddComponent<Image>();
            button.GetComponent<Button>().onClick.AddListener(() => { Debug.Log($"Button: +{i}+ was clicked"});
            levelButtons[i] = button;
        }
        
 }

在Unity中,您还可以通过使用List和Prefabs来实现。

,

因此问题得以解决...所以基本上我所做的只是更新我的统一版本,然后它使我可以使用UnityEngine.UI,现在问题已得到解决...

感谢大家的宝贵时间……感激不尽

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...