EditorGUIUtility.SetIconForObject
Declaration
public static void SetIconForObject(Object obj, Texture2D icon);Параметры
| Параметр | Описание |
|---|---|
| Объект | GameObject или MonoScript для ассоциации значка. |
| значок | Настраиваемый значок, связываемый с GameObject или MonoScript. Когда это значение нулево, восстанавливается значок по умолчанию. |
Описание
Задает пользовательский значок для сопоставления с GameObject или MonoScript. Пользовательский значок отображается в представлении Scene и Inspector.
Настраиваемые значки для GameObjects сохраняются в сцене.
using UnityEngine; using UnityEditor;
class Example { [MenuItem("Examples/Set Custom Icon on GameObject")] public static void SetCustomIconOnGameObject() { var go = new GameObject(); var icon = AssetDatabase.LoadAssetAtPath<Texture2D>("Assets/MyIcon.png");
EditorGUIUtility.SetIconForObject(go, icon); } }
Используя эту функцию, вы можете установить пользовательские значки непосредственно на MonoScript. Однако при следующем повторном импорте скрипта изменения будут утрачены.
Чтобы сделать пользовательский значок постоянным, вызовите MonoImporter.SetIcon и AssetImporter.SaveAndReimport. Если скрипт находится в управляемом плагине, вызовите PluginImporter.SetIcon вместо MonoImporter.SetIcon.
using UnityEngine; using UnityEditor;
class Example { [MenuItem("Examples/Set Custom Icon on MonoScript")] public static void SetCustomIconOnMonoScript() { var monoImporter = AssetImporter.GetAtPath("Assets/MyMonoBehaviour.cs") as MonoImporter; var monoScript = monoImporter.GetScript(); var icon = AssetDatabase.LoadAssetAtPath<Texture2D>("Assets/MyIcon.png");
EditorGUIUtility.SetIconForObject(monoScript, icon);
// make the custom icon persistent monoImporter.SetIcon(icon); monoImporter.SaveAndReimport(); } }
При установке пользовательских значков из GUI рекомендуется отложить повторный импорт до закрытия GUI. Если повторный импорт будет произведен до закрытия GUI, перезагрузка домена, вызванная перекомпиляцией скрипта, может привести к неудовлетворительному опыту пользователя.
Дополнительные ресурсы: MonoImporter, PluginImporter.