Canvas のプレハブ化が上手くいきません。
初の質問投稿となります。よろしくお願いします。
uGUI の Textをプレハブから生成した後、 Canvas を親として設定するためにプレハブを使い
public class NumberText : MonoBehaviour
{
public Canvas UICanvas; //UIを表示するキャンバス
void Awake(){
transform.SetParent(UICanvas.transform, false);
}
}
というように書いたのですが、下記のエラーが出てしまいます。
Setting the parent of a transform which resides in a prefab is disabled to prevent data corruption.
プレハブを使わずに、 Canvas を直接 GameObject.Find
することで正常に動作してくれたのですが、プレハブ化出来ないのがどうもモヤモヤします。
Inspector 上でプレハブやスクリプトを付け忘れていないことは確認しているのですが…。
Canvas をプレハブ化して参照するような使い方をすることが間違っているのでしょうか?
また、 Hierarchy にある CanvasはPanel や Image を子オブジェクトとして持つのですが、プレハブ化した際にこれらの子オブジェクトが Project ビューに表示されないことも気になります。