目录
新建
- 选中或者创建新节点
- 手动挂载或者使用快捷键(GameObject-> UI -> Scrollbar)创建脚本Scroll Rect
效果展示
参数解释
Content
内容
这是对需要滚动的 UI 元素(例如大型图像)的矩形变换的引用。
Horizontal
水平滚动
启用水平滚动
Vertical
垂直滚动
启用垂直滚动
Movement Type
运行方式
Unrestricted、Elastic 或 Clamped。使用 Elastic 或 Clamped 可强制内容保持在滚动矩形的边界内。Elastic 模式在内容到达滚动矩形边缘时弹回内容
Elasticity 这是弹性模式中使用的反弹量。
Inertia
惯量
如果设置 Inertia,则拖动指针再松开时内容将继续移动。如果未设置 Inertia,则只有进行拖动时内容才移动。
Deceleration Rate 减速率 设置 Inertia 的情况下,减速率决定了内容停止移动的速度。速率为 0 将立即停止移动。值为 1 表示移动永不减速。
Scroll Sensitivity
敏感性
对滚轮和触控板滚动事件的敏感性。
Viewport
视图
对作为内容矩形变换父项的视口矩形变换的引用。
Horizontal Scrollbar
水平滚动条
对水平滚动条元素的引用(可选)。
Visibility 滚动条是否应在不需要时自动隐藏以及(可选)是否还展开视口。
Spacing 滚动条与视口之间的空间。
Vertical Scrollbar
垂直滚动条
对垂直滚动条元素的引用(可选)。
Visibility 滚动条是否应在不需要时自动隐藏以及(可选)是否还展开视口。
Spacing 滚动条与视口之间的空间。
On Value Changed
事件
滚动矩形的滚动位置发生变化时调用的 UnityEvent。该事件可将当前滚动位置作为 Vector2 类型动态参数发送。
代码示例
using UnityEngine;
using UnityEngine.UI;
public class UGUIScrollView : MonoBehaviour
{
ScrollRect scrollRect;
void Start()
{
scrollRect = GetComponent<ScrollRect>();
SetScrollBottom();
}
void SetScrollTop()
{
// 到初始位置 值的范围是0-1,0是底部或左侧,1是顶部或右侧
scrollRect.normalizedPosition = new Vector2(0, 1);
}
void SetScrollBottom()
{
// 到初始位置 值的范围是0-1,0是底部或左侧,1是顶部或右侧
scrollRect.normalizedPosition = new Vector2(0, 0);
}
}
标签:滚动,scrollRect,ScrollView,滚动条,视口,矩形,Inertia
From: https://www.cnblogs.com/comradexiao/p/18472644