Version: 2020.2

GUI.BeginScrollView

Switch to Manual
public static Vector2 BeginScrollView (Rect position, Vector2 scrollPosition, Rect viewRect);
public static Vector2 BeginScrollView (Rect position, Vector2 scrollPosition, Rect viewRect, bool alwaysShowHorizontal, bool alwaysShowVertical);
public static Vector2 BeginScrollView (Rect position, Vector2 scrollPosition, Rect viewRect, GUIStyle horizontalScrollbar, GUIStyle verticalScrollbar);
public static Vector2 BeginScrollView (Rect position, Vector2 scrollPosition, Rect viewRect, bool alwaysShowHorizontal, bool alwaysShowVertical, GUIStyle horizontalScrollbar, GUIStyle verticalScrollbar);

Parameters

position@param position Прямоугольник на экране, в котором находится ScrollView.
scrollPositionThe pixel distance that the view is scrolled in the X and Y directions.
viewRect@param viewRect Прямоугольник активной (область без полосок прокрутки) области scrollview.
horizontalScrollbar@param horizontalScrollbar Опциональный GUIStyle, используемый для горизонтальной полосы прокрутки. Если не задан, то стиль horizontalScrollbar задается текущим GUISkin.
verticalScrollbar@param verticalScrollbar Опциональный GUIStyle, используемый для вертикальной полосы прокрутки. Если не задан, то стиль horizontalScrollbar задается текущим GUISkin.
alwaysShowHorizontal@param alwayShowHorizontal Опциональный параметр, отвечающий за постоянное отображение горизонтальной полосы прокрутки. Если значение не задано или равно false, то горизонтальная полоска показывается только, когда clientRect шире, чем position.
alwaysShowVertical@param alwayShowVertical Опциональный параметр, отвечающий за постоянное отображение вертикальной полосы прокрутки. Если значение не задано или равно false, то вертикальная полоска показывается только, когда clientRect выше, чем position.

Returns

Vector2 @return Изменение scrollPosition. Храните данное значение (значение обратной связи) в переменной и используйте, как показано в примере.

Description

Начинает прокручивающийся контейнер внутри GUI.

ScrollViews позволяет меньшей области на экране смотреть 'в' большую область, используя полосы прокрутки по краям ScrollView.

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { // The position on of the scrolling viewport public Vector2 scrollPosition = Vector2.zero;

void OnGUI() { // An absolute-positioned example: We make a scrollview that has a really large client // rect and put it in a small rect on the screen. scrollPosition = GUI.BeginScrollView(new Rect(10, 300, 100, 100), scrollPosition, new Rect(0, 0, 220, 200));

// Make four buttons - one in each corner. The coordinate system is defined // by the last parameter to BeginScrollView. GUI.Button(new Rect(0, 0, 100, 20), "Top-left"); GUI.Button(new Rect(120, 0, 100, 20), "Top-right"); GUI.Button(new Rect(0, 180, 100, 20), "Bottom-left"); GUI.Button(new Rect(120, 180, 100, 20), "Bottom-right");

// End the scroll view that we began above. GUI.EndScrollView(); } }