unity遍历激活被隐藏的ui
时间: 2023-08-10 19:07:15 浏览: 80
你可以使用以下代码来遍历激活被隐藏的UI:
```csharp
// 获取Canvas对象
Canvas canvas = GetComponent<Canvas>();
// 遍历Canvas下的所有子物体
for (int i = 0; i < canvas.transform.childCount; i++)
{
// 获取子物体
GameObject child = canvas.transform.GetChild(i).gameObject;
// 判断子物体是否被激活且被隐藏
if (child.activeSelf == false && child.GetComponent<CanvasGroup>().alpha == 0)
{
// 将子物体设为激活状态
child.SetActive(true);
}
}
```
这段代码首先获取Canvas对象,然后遍历Canvas下的所有子物体,判断子物体是否被激活且被隐藏,如果是则将子物体设为激活状态。注意,这段代码假设Canvas下的所有子物体都带有CanvasGroup组件,如果有的子物体没有该组件,需要做相应的修改。
阅读全文