Version: 2017.3
public static Color ColorField (Rect position, Color value);
public static Color ColorField (Rect position, string label, Color value);
public static Color ColorField (Rect position, GUIContent label, Color value);
public static Color ColorField (Rect position, GUIContent label, Color value, bool showEyedropper, bool showAlpha, bool hdr, ColorPickerHDRConfig hdrConfig);

参数

position 屏幕上用于字段的矩形。
label (可选)显示在字段前的标签。
value 要编辑的颜色。
showEyedropper 如果为 true,拾色器应显示吸管控件。如果为 false,则不显示吸管控件。
showAlpha 如果为 true,则允许用户为颜色设置 Alpha 值。如果为 false,则隐藏 Alpha 分量。
hdr 如果为 true,则将颜色视为 HDR 值。如果为 false,则将其视为标准 LDR 值。
hdrConfig An object that sets the presentation parameters for an HDR color. If not using an HDR color, set this to null.

返回

Color 用户选择的颜色。

描述

创建一个用于选择 Color 的字段。

\ 编辑器窗口中的 Color 字段。

// Change The color of the selected Game Objects
class EditorGUIColorField extends EditorWindow {

var matColor : Color = Color.white;

@MenuItem("Examples/Mass Color Change") static function Init() { var window = GetWindow(EditorGUIColorField); window.position = Rect(0,0,170,60); window.Show(); }

function OnGUI() { matColor = EditorGUI.ColorField(Rect(3,3,position.width - 6, 15), "New Color:", matColor); if(GUI.Button(Rect(3,25,position.width-6, 30),"Change!")) ChangeColors(); }

function ChangeColors() { if(Selection.activeGameObject) for(var t: GameObject in Selection.gameObjects) {

var rend = t.GetComponent.<Renderer>();

if(rend != null) rend.sharedMaterial.color = matColor; } } }