Unityを使ってレイアウトの調整作業を行なっています。
その中で、Vertical Layout GroupやHorizontal Layout Group、
Grid Layout Groupを使用した場合、Imageを思ったところに表示できません。
Vertical Layout Groupなどを使用せずに全画面で座標指定として
考えた場合だと768×1024などで設定したと仮定した場合、
Screen.height、Screen.widthを使って計算できています。
C#
試したこと
Vector2 a = panel.pixelRect.size; LogV2("pixelRect.size", "a", a); Vector2 b = panel.GetComponent<RectTransform>().rect.size; LogV2("rect.size", "b", b); Vector2 c = panel.GetComponent<RectTransform>().rect.position; LogV2("rect.position", "c", c); Vector2 d = panel.GetComponent<RectTransform>().sizeDelta; LogV2("sizeDelta", "d", d); Logでの出力結果 pixelRect.size a x: 768, y: 1024 rect.size b x: 768, y: 1024 rect.position c x: -384, y: -512 sizeDelta d x: 768, y: 1024
現在、親Canvasの中に3列Canvasを並べていて
真ん中のCanvasに動的にPanelを生成している状況です。
この画像で説明しますと、GridのCanvasのrectのサイズを取得したいのです。
3分割しているので、それぞれにCanvasサイズを取得出来れば良いのですが、今のところ、画面サイズであったり、中心の座標しか取得できていない状況です。
それぞれのcanvasの幅768、高さ341となっており、Canvasのサイズを取得する方法をご伝授のほどよろしくお願い致します。
変数等を探していますが見つけることが出来ていません。
特に高さ341を取得出来れば最高です。
補足情報(FW/ツールのバージョンなど)
macOS Catalina
Unity Ver 2019.3.9f1
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。