您好,登錄后才能下訂單哦!
private IEnumerator RefreshProcess(Vector2 worldPosition) { this.Renders(); yield return null; yield return null; mRootWidth = (mRoot as RectTransform).rect.width; mrootHeigh = (mRoot as RectTransform).rect.height; mRoot.gameObject.SetActive(false); this.SelfAdaption(worldPosition); }
獲得窗體正確的大小需注意一下幾點:
1、在UGUI中,獲取窗體的大小使用
mRootWidth = (mRoot as RectTransform).rect.width; mrootHeigh = (mRoot as RectTransform).rect.height;
2、該窗體gameobject的需處于激活狀態,即可見狀態。
3、若是使用代碼動態創建窗體,里面包含AutoLayout自動布局等組件,在創建的同一幀中是獲取不到窗體大小的。
4、等待一幀后,發現獲取到的窗體大小有誤,再等待一幀后數據正常(不知道什么原因),所以如上所示我等待了2幀(誰知道原因,麻煩告知一下)。
若有不對,望指正。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。