动态添加Ugui组件
Posted silent-bobo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了动态添加Ugui组件相关的知识,希望对你有一定的参考价值。
动态添加Ugui组件
动态添加是指:在场景中有一个canvas,使用代码,动态添加一个没有canvas的prefab,但是这个prefab需要挂载到canvas下,就是canvans下的ugui组件
如果anchors 的min和max 不是 (0.5, 0.5)的时候就会有问题,添加的位置是不对的,
具体什么原因不是很懂, 与锚点有关系
一下代码就可以避免这种情况
1 GameObject obj = Resources.Load<GameObject>("btn_info_test"); // 要动态添加的物体 2 GameObject child = GameObject.Instantiate(obj); // 实例化GameObject 3 child.transform.parent = tran; // 设置父物体 4 //child.GetComponent<RectTransform>().pivot = obj.GetComponent<RectTransform>().pivot; 5 // 设置anchors min的偏移量 ,就是anchors min 到 控件左下角的偏移量 6 child.GetComponent<RectTransform>().offsetMin = obj.GetComponent<RectTransform>().offsetMin; 7 // 设置anchors min的偏移量 , 就是anchors max 到 控件右上角的偏移量 8 child.GetComponent<RectTransform>().offsetMax = obj.GetComponent<RectTransform>().offsetMax;
以上是关于动态添加Ugui组件的主要内容,如果未能解决你的问题,请参考以下文章