Объявление
public static Color ColorField(Color value, params GUILayoutOption[] options);public static Color ColorField(string label, Color value, params GUILayoutOption[] options);
public static Color ColorField(GUIContent label, Color value, params GUILayoutOption[] options);
public static Color ColorField(GUIContent label, Color value, bool showEyedropper, bool showAlpha, bool hdr, params GUILayoutOption[] options); Устаревший Используйте EditorGUILayout.ColorField(GUIContent label, Color value, bool showEyedropper, bool showAlpha, bool hdr, params GUILayoutOption[] options).
public static Color ColorField(GUIContent label, Color value, bool showEyedropper, bool showAlpha, bool hdr, ColorPickerHDRConfig hdrConfig, params GUILayoutOption[] options);
Параметры
label | Необязательная метка для отображения перед полем. |
value | Цвет для редактирования. |
showEyedropper | Если true, палитра цветов должна отображать пипетку. Если ложь, не показывайте это. |
showAlpha | Если true, разрешить пользователю устанавливать альфа-значение для цвета. Если false, скройте альфа-компонент. |
hdr | Если верно, рассматривать цвет как значение HDR. Если false, обработайте его как стандартное значение LDR. |
options | Необязательный список параметров макета, определяющих дополнительные свойства макета. Любые переданные здесь значения переопределяют настройки, заданные стилем .Смотрите так же: GUILayout.Width, GUILayout.Height, GUILayout.MinWidth, GUILayout.MaxWidth, GUILayout.MinHeight, GUILayout.MaxHeight, GUILayout.ExpandWidth, GUILayout.ExpandHeight. |
Возвращает
Color Цвет, выбранный пользователем.
Описание
Создайте поле для выбора Цвета.

using UnityEngine;
using UnityEditor;
// Изменяем цвет выбранных GameObjects.
public class ExampleClass : EditorWindow
{
Color matColor = Color.white;
[MenuItem("Examples/Mass Color Change")]
static void Init()
{
EditorWindow window = GetWindow(typeof(ExampleClass));
window.Show();
}
void OnGUI()
{
matColor = EditorGUILayout.ColorField("New Color", matColor);
if (GUILayout.Button("Change!"))
ChangeColors();
}
private void ChangeColors()
{
if (Selection.activeGameObject)
foreach (GameObject t in Selection.gameObjects)
{
Renderer rend = t.GetComponent<Renderer>();
if (rend != null)
rend.sharedMaterial.color = matColor;
}
}
}