返回介绍

ScrollViewScope 滚动范围

发布于 2019-12-18 15:37:47 字数 3986 浏览 1222 评论 0 收藏 0

class in UnityEngine

Description 描述

Disposable helper class for managing BeginScrollView / EndScrollView.

管理BeginScrollView / EndScrollView的可支配助手类。

Automatically laid out scrollviews will take whatever content you have inside them and display normally. If it doesn't fit, scrollbars will appear. A call to BeginScrollView must always be matched with a call to EndScrollView.

自动布局滚动范围将会获取它们内部的内容并正常显示。如果不合适,滚动条将会出现。BeginScrollView必须总是匹配EndScrollView。

JavaScript:

#pragma strict
public var scrollPosition: Vector2;
public var longString: String = "This is a long-ish string";
function OnGUI() {
	var scrollViewScope: var = new ScrollViewScope(scrollPosition, GUILayout.Width(100), GUILayout.Height(100));
	{
		scrollPosition = scrollViewScope.scrollPosition;
		// scrollbars will work correctly with wordwrap.
		GUILayout.Label(longString);
		// for the vertical scrollbar
		if (GUILayout.Button("Clear"))
			longString = "";
	}
	// the scrolling area.
	if (GUILayout.Button("Add More Text"))
		longString += "\nHere is another line";
}

C#:

using UnityEngine;
using UnityEditor;
public class ExampleClass : MonoBehaviour {
	// The variable to control where the scrollview 'looks' into its child elements.
	public Vector2 scrollPosition;
 
	// The string to display inside the scrollview. 2 buttons below add & clear this string.
	public string longString = "This is a long-ish string";
 
	void OnGUI() {
		// Begin a scroll view. All rects are calculated automatically - 
		// it will use up any available screen space and make sure contents flow correctly.
		// This is kept small with the last two parameters to force scrollbars to appear.
		using (var scrollViewScope = new ScrollViewScope(scrollPosition, GUILayout.Width(100), GUILayout.Height(100))) {
			scrollPosition = scrollViewScope.scrollPosition;
 
			// We just add a single label to go inside the scroll view. Note how the
			// scrollbars will work correctly with wordwrap.
			GUILayout.Label(longString);
 
			// Add a button to clear the string. This is inside the scroll area, so it
			// will be scrolled as well. Note how the button becomes narrower to make room
			// for the vertical scrollbar
			if (GUILayout.Button("Clear"))
				longString = "";
		}
 
		// Now we add a button outside the scrollview - this will be shown below
		// the scrolling area.
		if (GUILayout.Button("Add More Text"))
			longString += "\nHere is another line";
 
	}
}

Variables

handleScrollWheelWhether this ScrollView should handle scroll wheel events. (default: true).
是否该滚动视图运用滚轮事件。(默认为true)。
scrollPositionThe modified scrollPosition. Feed this back into the variable you pass in, as shown in the example.
修改滚动位置。输入该返回到你传递的变量,如例子中所显示的。

Constructors

GUILayout.ScrollViewScopeCreate a new ScrollViewScope and begin the corresponding ScrollView.
创建新的滚动范围并形成相对应的滚动视图。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文