将游戏对象实例化为 Child
Instantiate a gameobject as Child
我正在使用 Unity 开发 2D UI 应用程序,但我遇到了问题。
我正在编写脚本来实例化我的弹出窗口 window(我制作了一个预制件)。我成功了,但后来 Unity 崩溃了,我不得不重做我的场景(忘了按 ctrl+s)
自从这次崩溃以来,我的弹出窗口没有实例化为 canvas 的子窗口,我收到了这条消息:
"Setting the parent of a transform which resides in a prefab is disabled to prevent data corruption"
这是我的脚本:
using UnityEngine;
using System.Collections;
public class Popup : MonoBehaviour
{
public RectTransform popupPrefab;
private Animator anim;
// Use this for initialization
void Start()
{
//get the animator component
anim = popupPrefab.GetComponent<Animator>();
//disable it on start to stop it from playing the default animation
anim.enabled = false;
}
public void CreatePopup()
{
// Copie du prefab
RectTransform newPopup = Instantiate(popupPrefab, popupPrefab.transform.position, popupPrefab.transform.rotation) as RectTransform;
newPopup.transform.SetParent(transform, false);
//anim = newPopup.GetComponent<Animator>();
//anim.enabled = true;
//anim.Play("Popup");
}
public void ClosePopup()
{
anim.enabled = true;
anim.Play("ClosePopup");
}
}
我不明白为什么会出现此错误,因为它在崩溃前工作正常...
如果你有什么想法
谢谢
我通过从头开始重新做我的项目解决了这个问题...
我正在使用 Unity 开发 2D UI 应用程序,但我遇到了问题。 我正在编写脚本来实例化我的弹出窗口 window(我制作了一个预制件)。我成功了,但后来 Unity 崩溃了,我不得不重做我的场景(忘了按 ctrl+s) 自从这次崩溃以来,我的弹出窗口没有实例化为 canvas 的子窗口,我收到了这条消息: "Setting the parent of a transform which resides in a prefab is disabled to prevent data corruption"
这是我的脚本:
using UnityEngine;
using System.Collections;
public class Popup : MonoBehaviour
{
public RectTransform popupPrefab;
private Animator anim;
// Use this for initialization
void Start()
{
//get the animator component
anim = popupPrefab.GetComponent<Animator>();
//disable it on start to stop it from playing the default animation
anim.enabled = false;
}
public void CreatePopup()
{
// Copie du prefab
RectTransform newPopup = Instantiate(popupPrefab, popupPrefab.transform.position, popupPrefab.transform.rotation) as RectTransform;
newPopup.transform.SetParent(transform, false);
//anim = newPopup.GetComponent<Animator>();
//anim.enabled = true;
//anim.Play("Popup");
}
public void ClosePopup()
{
anim.enabled = true;
anim.Play("ClosePopup");
}
}
我不明白为什么会出现此错误,因为它在崩溃前工作正常...
如果你有什么想法 谢谢
我通过从头开始重新做我的项目解决了这个问题...