Version: 2021.3
public static int LayerField (int layer, params GUILayoutOption[] options);
public static int LayerField (int layer, GUIStyle style, params GUILayoutOption[] options);
public static int LayerField (string label, int layer, params GUILayoutOption[] options);
public static int LayerField (string label, int layer, GUIStyle style, params GUILayoutOption[] options);
public static int LayerField (GUIContent label, int layer, params GUILayoutOption[] options);
public static int LayerField (GUIContent label, int layer, GUIStyle style, params GUILayoutOption[] options);

パラメーター

label フィールドのラベル
layer フィールドに表示するレイヤー
style オプションの GUIStyle
options 指定してレイアウトオプションを渡すときのレイアウトオプションのリスト。ここで設定したものは style によって設定された値を上書きします。
See Also: GUILayout.Width, GUILayout.Height, GUILayout.MinWidth, GUILayout.MaxWidth, GUILayout.MinHeight, GUILayout.MaxHeight, GUILayout.ExpandWidth, GUILayout.ExpandHeight.

戻り値

int ユーザーによって設定された値

説明

レイヤー選択フィールドを作成します。


Set the layer of the selected GameObjects.

// Simple editor script that lets you set the layer for the
// selected GameObjects.

using UnityEngine; using UnityEditor;

public class LayerFieldExample : EditorWindow { static int selectedLayer = 0;

[MenuItem("Examples/Layer Field usage")] static void Init() { LayerFieldExample window = (LayerFieldExample)GetWindow(typeof(LayerFieldExample)); window.Show(); }

// Disable menu if we dont have at least 1 gameobject selected [MenuItem("Examples/Layer Field usage", true)] static bool ValidateSelection() { return Selection.activeGameObject != null; }

void OnGUI() { selectedLayer = EditorGUILayout.LayerField("Layer for Objects:", selectedLayer); if (GUILayout.Button("Set Layer!")) SetLayer(); }

static void SetLayer() { foreach (var go in Selection.gameObjects) go.layer = selectedLayer; } }