Version: 5.3 (switch to 5.4b)
言語English
  • C#
  • JS

スクリプト言語

好きな言語を選択してください。選択した言語でスクリプトコードが表示されます。

EditorGUIUtility.GetFlowLayoutedRects

フィードバック

ありがとうございます

この度はドキュメントの品質向上のためにご意見・ご要望をお寄せいただき、誠にありがとうございます。頂いた内容をドキュメントチームで確認し、必要に応じて修正を致します。

閉じる

送信に失敗しました

なんらかのエラーが発生したため送信が出来ませんでした。しばらく経ってから<a>もう一度送信</a>してください。ドキュメントの品質向上のために時間を割いて頂き誠にありがとうございます。

閉じる

キャンセル

マニュアルに切り替える
public static function GetFlowLayoutedRects(rect: Rect, style: GUIStyle, horizontalSpacing: float, verticalSpacing: float, items: List<string>): List<Rect>;
public static List<Rect> GetFlowLayoutedRects(Rect rect, GUIStyle style, float horizontalSpacing, float verticalSpacing, List<string> items);

パラメーター

rect レイアウトする範囲
style 項目のスタイル
horizontalSpacing 連続する項目間の水平方向の間隔
verticalSpacing 列になっている項目の垂直方向の間隔
items 配置する文字列

戻り値

List<Rect> 渡された項目の矩形のリスト

説明

文字列リストの項目を、指定された範囲に左から右、上から下にレイアウトします。


GetFlowLayoutedRects で配置したボタンの例


        
using UnityEngine;
using UnityEditor;
using System.Collections.Generic;

public class MyWindow : EditorWindow { [MenuItem ("Window/My Window")] static void OpenMyWindow () { EditorWindow.GetWindow<MyWindow> (true); } void OnGUI () { // area to layout our items in var rect = new Rect(10, 10, position.width-20, position.height-20); // items to layout var items = new List<string> { "One button", "Another button", "Yet another", "Hey there's more", "More!" }; // get resulting rectangles of items var style = EditorStyles.miniButton; var boxes = EditorGUIUtility.GetFlowLayoutedRects (rect, style, 4, 4, items); // do actual UI for them for (var i = 0; i < boxes.Count; ++i) { GUI.Button (boxes[i], items[i], style); } } }