Выпадающий список в инспекторе

Раздел, посвящённый всему, что связано с программированием для Редактора Юнити. Скрипты Редактора, Wizards и прочее.

Выпадающий список в инспекторе

Сообщение MrDmitry 18 июн 2020, 21:34

Здравствуйте. Не могу сделать выпадающий список в инспекторе


Синтаксис:
Используется csharp
List<string> OnAction = new List<string>();

...

public override void OnInspectorGUI()
    {
            foreach(States item in sm.Items)
            {
                EditorGUILayout.BeginVertical("box");
                item.OnAction = EditorGUILayout.Popup(0, item.OnAction);
                EditorGUILayout.EndVertical();
            }
        }


Ругается что item.OnAction должен быть string[] а не List<stribg>. Как быть? Есть какой то способ сделать из list string[] не используя банальный перебор в цикле?
MrDmitry
UNITрон
 
Сообщения: 184
Зарегистрирован: 05 авг 2017, 17:21

Re: Выпадающий список в инспекторе

Сообщение seaman 18 июн 2020, 22:21

Синтаксис:
Используется csharp
using System.Linq;
...
item.OnAction = EditorGUILayout.Popup(0, item.OnAction.ToArray()).ToList();


Но лучше все же использовать не Lust, а массив. Потому как такие преобразования медленные.
seaman
Адепт
 
Сообщения: 8335
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Re: Выпадающий список в инспекторе

Сообщение MrDmitry 19 июн 2020, 06:15

Спасибо за ответ. По вашему совету, сделал тестовый массив

Синтаксис:
Используется csharp
public string[] OnAction = new string[]{"1", "2", "3"};


В итоге на строчке

Синтаксис:
Используется csharp
item.OnAction = EditorGUILayout.Popup(1, item.OnAction);


ошибка
Cannot implicitly convert type 'int' to 'string[]' [Assembly-CSharp]csharp(CS0029)
MrDmitry
UNITрон
 
Сообщения: 184
Зарегистрирован: 05 авг 2017, 17:21

Re: Выпадающий список в инспекторе

Сообщение seaman 19 июн 2020, 10:35

НУ да. И мне в справку надо иногда заглядывать - освежить память.
https://docs.unity3d.com/ScriptReferenc ... Popup.html
Синтаксис:
Используется csharp
        index = EditorGUILayout.Popup(index, options);
seaman
Адепт
 
Сообщения: 8335
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Re: Выпадающий список в инспекторе

Сообщение MrDmitry 19 июн 2020, 11:47

ДА понял, моя не внимательность. Popup возвращает число. Спасибо.
MrDmitry
UNITрон
 
Сообщения: 184
Зарегистрирован: 05 авг 2017, 17:21


Вернуться в Editor

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2