NGUI动态添加
1 动态添加sprite
因为暂时未解决在脚本中动态指定atlas,所以,目前动态添加的sprite需要手动指定
public UIAtlas at; // Use this for initialization void Start () { test(); } void test() { GameObject a = GameObject.Find("Panel"); UISprite b = NGUITools.AddSprite(a,at,"Highlight - Thin"); b.MakePixelPerfect(); }
首先找到需要添加sprite的父物体 GameObject a = GameObject.Find("Panel");
这里是添加在panel下面
然后动态添加一个sprite ,使用NGUITools.AddSprite添加,参数为(父物体,atlas,spritename)。
2 动态添加做成prefab的NGUI组件
GameObject a =(GameObject) Instantiate(Resources.Load("Button")); a.transform.parent = GameObject.Find("Panel").transform; GameObject b = GameObject.Find(a.name); b.transform.localPosition = new Vector3(0,0,0); b.transform.localScale= new Vector3(1,1,1);

首先把一个button做成prefab,然后定义button的父物体,将button添加到它下面,然后因为添加以后缩放系数变化了,所以如果直接添加,坐标变化会很大,因此手动指定一下
浙公网安备 33010602011771号