我需要使用EditorGUI。IndentLevelScope和它只工作与编辑器GUILayout像LabelField, Foldout,而不是在GUILayout像Label。
这是我的代码
using (var midScroll = new EditorGUILayout.ScrollViewScope(midSPos, true, true))
{
using (new EditorGUI.IndentLevelScope(1))
{
midSPos = midScroll.scrollPosition;
for (int i = 0; i < 50; i++)
{
EditorGUILayout.LabelField("This is a EditorGUILayout.LabelField. This is a EditorGUILayout.LabelField.", GUI.skin.GetStyle("LinkLabel"));
}
}
}
垂直工作,但不是水平工作图片:https://gyazo.com/70382d83222dc7fc2db54c4745836dfc
与GUILayout代码相同。标签工作我错过了什么
最后,我找到了一个解决方案,通过在GUILayout的前面和后面添加一个空的PrefixLabel
来标记同样,滚动条现在可以工作了。
HorizontalScope
EditorGUILayout.PrefixLabel("");
GUILayout.Label("content");
但是,仍然有一些问题与我的折叠像这样,因为我不能添加HorizontalScope。
InitRow(row row)
{
if (isShowing = EditorGUILayout.Foldout(isShowing, "Foldout"))
{
InitRow(child);
}
}