我将我的克隆保存在Unity3D&amp ;;中的GUI操作列表中。 C#。
button = Instantiate(BlackBox, Vector2.zero, Quaternion.identity) as GameObject;
buttons.Add(button);
如何在this situation中启用ArrowRight?
我想要到达ArrowRight以启用它。我试过这种方法的变种:
buttons[index].gameObject.transform.GetChild(1).gameObject.SetActive(true);
但它不起作用。 Objects' components
答案 0 :(得分:0)
我很快就得到了这段代码来解决你的问题。也许不是最好的解决方案,但如果我理解你的问题,它应该有效。
using UnityEngine;
public class blackBox : MonoBehaviour {
public bool toggleRight;
// Update is called once per frame
void Update () {
if(toggleRight)
{
foreach(Transform child in transform)
{
if(child.name.Equals("ArrowRight"))
{
child.gameObject.SetActive(!child.gameObject.activeSelf);
}
}
toggleRight = false;
}
}
}
这只是一个演示,可以满足您的需求。
将其放置在黑盒游戏对象上,并使用foreach激活或停用具有所述名称的游戏对象。
答案 1 :(得分:0)
解决:
而不是:
buttons[index].gameObject.transform.GetChild(1).gameObject.SetActive(true);
使用:
buttons[index].transform.GetChild(1).gameObject.SetActive(true);