用于管理 BeginScrollView / EndScrollView 的一次性辅助类。
这些功能与 ScrollViewScope 相同,但感觉更像应用程序,应该在编辑器中使用
滚动视图中的标签。
using UnityEngine; using UnityEditor;
// Simple Editor Window that creates a scroll view with a Label inside class BeginEndScrollView : EditorWindow { Vector2 scrollPos; string t = "This is a string inside a Scroll view!";
[MenuItem("Examples/Write text on ScrollView")] static void Init() { var window = GetWindow<BeginEndScrollView>(); window.Show(); }
void OnGUI() { using (var h = new EditorGUILayout.HorizontalScope()) { using (var scrollView = new EditorGUILayout.ScrollViewScope(scrollPos, GUILayout.Width(100), GUILayout.Height(100))) { scrollPos = scrollView.scrollPosition; GUILayout.Label(t); } if (GUILayout.Button("Add More Text", GUILayout.Width(100), GUILayout.Height(100))) t += " \nAnd this is more text!"; } if (GUILayout.Button("Clear")) t = ""; } }
handleScrollWheel | 此 ScrollView 是否应处理滚轮事件。(默认值:true)。 |
scrollPosition | 修改后的 scrollPosition。将此反馈到您传入的变量中,如示例所示。 |
EditorGUILayout.ScrollViewScope | 创建一个新的 ScrollViewScope 并开始相应的 ScrollView。 |