public static int LayerField (Rect position, int layer, GUIStyle style= EditorStyles.popup);
public static int LayerField (Rect position, string label, int layer, GUIStyle style= EditorStyles.popup);
public static int LayerField (Rect position, GUIContent label, int layer, GUIStyle style= EditorStyles.popup);

Parameters

position 屏幕上用于字段的矩形。
label (可选)字段前的标签。
layer 字段中显示的层。
style 可选 GUIStyle

Returns

int 用户选择的层。

Description

创建一个层选择字段。


Layer field in an Editor Window.


// Change the Tag and/or the layer of the selected GameObjects.

class EditorGUITagLayerField extends EditorWindow {

var selectedTag : String = ""; var selectedLayer : int = 0;

@MenuItem("Examples/Tag - Layer for Selection") static function Init() { var window = GetWindow(EditorGUITagLayerField); window.position = Rect(0,0,350,70); window.Show(); }

function OnGUI() { selectedTag = EditorGUI.TagField( Rect(3,3,position.width/2 - 6, 20), "New Tag:", selectedTag); selectedLayer = EditorGUI.LayerField( Rect(position.width/2 + 3,3, position.width/2 - 6, 20), "New Layer:", selectedLayer);

if(Selection.activeGameObject) { if(GUI.Button(Rect(3,25,90,17),"Change Tags")) for(var go : GameObject in Selection.gameObjects) go.tag = selectedTag; if(GUI.Button(Rect(position.width-96, 25,90,17),"Change Layers")) for(var go : GameObject in Selection.gameObjects) go.layer = selectedLayer; } }

function OnInspectorUpdate() { Repaint(); } }