C# 如何在一个循环中获得两个GameObjects子对象? for(int i=0;i
我在这两种情况下都使用变量t,只是为了测试调试 门[i]每个环路有两个门。 doors[0]包含两个项,每个项都有一个子项。C# 如何在一个循环中获得两个GameObjects子对象? for(int i=0;i,c#,unity3d,C#,Unity3d,我在这两种情况下都使用变量t,只是为了测试调试 门[i]每个环路有两个门。 doors[0]包含两个项,每个项都有一个子项。 我想得到他们每个人的孩子。现在,我只获取doors中的项目,而不是每个项目的子项。由于每个项目仅包含一个子项,因此可以使用Transform.GetChild(0)获取第一个子项和唯一子项。剩下的很简单,遍历doors[i]中的每一项,然后找到他们的孩子 for (int i = 0; i < doors.Count; i++) {
我想得到他们每个人的孩子。现在,我只获取doors中的项目,而不是每个项目的子项。由于每个项目仅包含一个子项,因此可以使用
Transform.GetChild(0)
获取第一个子项和唯一子项。剩下的很简单,遍历doors[i]中的每一项,然后找到他们的孩子
for (int i = 0; i < doors.Count; i++)
{
if (doorLockState == true)
{
var t = doors[i].GetComponentInChildren<Transform>();
// Color in red
}
else
{
var t = doors[i].GetComponentInChildren<Transform>();
// Color in green
}
}
foreach(在dooors[i].GetComponentsInChildren()中转换子对象)
{
Transform childOfChild=child.GetChild(0);
}
由于每个项仅包含一个子项,因此可以使用Transform.GetChild(0)
获取第一个子项和唯一子项。剩下的很简单,遍历doors[i]中的每一项,然后找到他们的孩子
for (int i = 0; i < doors.Count; i++)
{
if (doorLockState == true)
{
var t = doors[i].GetComponentInChildren<Transform>();
// Color in red
}
else
{
var t = doors[i].GetComponentInChildren<Transform>();
// Color in green
}
}
foreach(在dooors[i].GetComponentsInChildren()中转换子对象)
{
Transform childOfChild=child.GetChild(0);
}
正在工作,如果有多个孩子?我犯了一个错误,每个项目有两个孩子,而不是一个。在索引0和索引1处。我可以添加另一行转换childOfChild1=child.GetChild(1);但也许有更好的方法吗?@DubiDuboni foreach循环适用于任何数量的儿童。如果有多个childOfChild,可以使用childCount()创建for循环。例如:for(int i=0;i
正在工作,是否有多个child?我犯了一个错误,每个项目有两个孩子,而不是一个。在索引0和索引1处。我可以添加另一行转换childOfChild1=child.GetChild(1);但也许有更好的方法吗?@DubiDuboni foreach循环适用于任何数量的儿童。如果有多个childOfChild,可以使用childCount()创建for循环。例如:for(int i=0;i