Unity GUI 的 ScrollView 可滚动区域

创建组件

在场景中的canvas中右键创建ScrollView, 记住不是Scrollbar


image.png
配置组件

如果是全屏,将Scroll View对象拉伸至全屏
在Content中创建需要拖拽的对象,并在ScrollView属性面板声明需要滚动内容的方向,滚动条是可以删除的,滚动区域背景色也是可以消除的在属性里

Unity GUI 的 ScrollView 可滚动区域_第1张图片
image.png
控制拖拽区域

拖拽区域和内容在任何位置以及内容大小无关,是取决于content大小

var rect = btGroup.GetComponent ();
var s = rect.sizeDelta;
//修改s大小,总想就修改y值,横向就修改x值
rect.sizeDelta = s;
rect.localPosition = new Vector3 (0,s.y); 
控制滚动条固定位置

直接设置位置点

btGroup.transform.localPosition = new Vector3 ();

设置运动动画

btGroup.transform.DOLocalMoveY (btGroup.transform.localPosition.y - Screen.height * .05f, 1f).SetEase (Ease.OutSine).SetDelay (.5f);

动画来自DOTween,详见之前DoTween章节

不用去刻意优化过多显示对象问题,unity会自动优化content区域最大滑动性能

你可能感兴趣的:(Unity GUI 的 ScrollView 可滚动区域)