動態添加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; 
相關文章
相關標籤/搜索