在Unity 5.3中将图像实例化为画布的子对象



我正试图将一个Image实例化为画布元素的子元素。

这段代码附在Unity Canvas上,我想把它作为父级。

 Image Pokal = GameObject.Instantiate(Resources.Load("Pokal")) as Image;
    if (Pokal != null)
        Pokal.gameObject.GetComponent<RectTransform>().parent = gameObject.transform;

我希望我的"Pokal"成为UI Canvas元素的子元素。我该怎么做?预制件被添加到场景中,但我不知道如何使其成为Canvas元素的子元素。

我相信这个问题以前已经回答过了。不管怎样,你所要做的就是拿到画布。您正在将父对象设置为一个空的游戏对象,而不是实际的画布。

public GameObject myCanvas; // you also can do GameObject.Find (CanvasName)
Image Pokal = GameObject.Instantiate(Resources.Load("Pokal")) as Image;
    if (Pokal != null)
        Pokal.transform.parent = myCanvas.transform;

我希望这将帮助您解决问题

Image Pokal = Instantiate(Resources.Load("Pokal")) as Image;
if (Pokal != null)
    Pokal.transform.parent = transform;

最新更新