ScrollRect(捲動檢視)是Unity UGUI中的一個常用元件,用於在UI介面中建立可捲動的區域。通過ScrollRect元件,可以實現在有限的空間內顯示大量的內容,並且可以通過滑動手勢來瀏覽內容。
ScrollRect元件通過將內容放置在一個可捲動的矩形區域內,然後通過拖動或滑動手勢來改變內容的顯示位置。ScrollRect元件包含一個Viewport(視口)和一個Content(內容)兩個子物件,Viewport用於限制Content的顯示範圍,而Content則包含了實際的內容。
using UnityEngine;
using UnityEngine.UI;
public class ScrollRectExample : MonoBehaviour
{
public ScrollRect scrollRect;
void Start()
{
// 設定Content的大小
RectTransform content = scrollRect.content;
content.sizeDelta = new Vector2(0, 1000);
// 設定捲動檢視的捲動範圍
scrollRect.verticalNormalizedPosition = 1;
}
}
操作步驟:
using UnityEngine;
using UnityEngine.UI;
public class ScrollRectExample : MonoBehaviour
{
public ScrollRect scrollRect;
void Start()
{
// 設定Content的大小
RectTransform content = scrollRect.content;
content.sizeDelta = new Vector2(0, 1000);
// 設定捲動檢視的捲動範圍
scrollRect.verticalNormalizedPosition = 1;
scrollRect.movementType = ScrollRect.MovementType.Clamped;
}
}
操作步驟:
using UnityEngine;
using UnityEngine.UI;
public class ScrollRectExample : MonoBehaviour
{
public ScrollRect scrollRect;
void Start()
{
// 設定Content的大小
RectTransform content = scrollRect.content;
content.sizeDelta = new Vector2(0, 1000);
// 設定捲動檢視的捲動範圍
scrollRect.verticalNormalizedPosition = 1;
scrollRect.inertia = true;
scrollRect.decelerationRate = 0.5f;
}
}
操作步驟:
using UnityEngine;
using UnityEngine.UI;
public class ScrollRectExample : MonoBehaviour
{
public ScrollRect scrollRect;
void Start()
{
// 設定Content的大小
RectTransform content = scrollRect.content;
content.sizeDelta = new Vector2(0, 1000);
// 設定捲動檢視的捲動範圍
scrollRect.verticalNormalizedPosition = 1;
// 捲動到指定位置
scrollRect.ScrollTo(new Vector2(0, 500), 0.5f);
}
}
操作步驟:
using UnityEngine;
using UnityEngine.UI;
public class ScrollRectExample : MonoBehaviour
{
public ScrollRect scrollRect;
void Start()
{
// 設定Content的大小
RectTransform content = scrollRect.content;
content.sizeDelta = new Vector2(0, 1000);
// 設定捲動檢視的捲動範圍
scrollRect.verticalNormalizedPosition = 1;
// 停止捲動
scrollRect.StopMovement();
}
}
操作步驟: