BeginScrollView, EndScrollView

示例程序
说明绘制可以滑动的视图

用法

两者用法一致,修改相应的函数名即可。默认情况下为垂直由上到下绘制,开始水平绘制时则为从左到右绘制。

public static Vector2 BeginScrollView(Vector2 scrollPosition, params GUILayoutOption[] options);

public static Vector2 BeginScrollView(Vector2 scrollPosition, bool alwaysShowHorizontal, bool alwaysShowVertical, params GUILayoutOption[] options);

public static Vector2 BeginScrollView(Vector2 scrollPosition, GUIStyle horizontalScrollbar, GUIStyle verticalScrollbar, params GUILayoutOption[] options);

public static Vector2 BeginScrollView(Vector2 scrollPosition, bool alwaysShowHorizontal, bool alwaysShowVertical, GUIStyle horizontalScrollbar, GUIStyle verticalScrollbar, GUIStyle background, params GUILayoutOption[] options);

参数

scrollPosition

当前滑动到的位置。

alwayShowHorizontal

(可选)是否一直显示水平滚动条。

alwayShowVertical

(可选)是否一直显示垂直滚动条。

horizontalScrollbar

(可选)用于指定额外的水平滚动条样式。

verticalScrollbar

(可选)用于指定额外的竖直滚动条样式。

示例

public override void OnInspectorGUI () {

		EditorGUILayout.BeginHorizontal ();

		_scroll = EditorGUILayout.BeginScrollView (
				_scroll,
				false, true,
				GUILayout.ExpandWidth (true), GUILayout.Height (100)
		);

		EditorGUILayout.TextArea (_text);
		EditorGUILayout.EndScrollView ();

		if (GUILayout.Button ("Add More Text", GUILayout.Height (100))) {
				_text += "\nAnd this is more text.";
		}

		EditorGUILayout.EndHorizontal ();
		EditorGUILayout.Space ();
}