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添加到它下面,然后因为添加以后缩放系数变化了,所以如果直接添加,坐标变化会很大,因此手动指定一下

 

posted on 2015-01-19 11:21  &大飞  阅读(189)  评论(0)    收藏  举报

导航