UGUI ScrollRect 带按钮翻页支持拖拽

该博客介绍了如何在Unity3D中使用UGUI ScrollRect组件,结合C#编程实现带按钮的翻页功能,同时支持用户通过拖拽进行页面浏览。提供了一个DEMO下载链接供读者实践。
摘要由CSDN通过智能技术生成

UGUI ScrollRect 带按钮翻页支持拖拽




<strong><span style="font-family:Microsoft YaHei;font-size:14px;">using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.EventSystems;
using System.Collections.Generic;
using System;
/// <summary>
/// 略知CSharp http://blog.csdn.net/subsystemp
/// </summary>
public class ScrollRectHelper : MonoBehaviour, IBeginDragHandler, IEndDragHandler
{
  
    public float smooting = 5;                          //滑动速度
    public List<GameObject> listItem;                   //scrollview item 
    public int pageCount = 3;                  
这里提供一个简单的示例代码,使用UGUI实现按钮翻页和输入页码翻页显示当前页面文本的功能。以下代码使用了一个Text组件显示文本,两个Button组件实现翻页功能,并在Canvas上添加了一个InputField组件,用于输入页码。 ```csharp using UnityEngine; using UnityEngine.UI; public class PaginationExample : MonoBehaviour { public Text text; public Button prevButton; public Button nextButton; public InputField pageInput; private int currentPage = 0; private int totalPages = 5; void Start() { // 初始化文本和按钮状态 UpdateText(); UpdateButtons(); } void UpdateText() { text.text = "Page " + (currentPage + 1) + " of " + totalPages; } void UpdateButtons() { prevButton.interactable = (currentPage > 0); nextButton.interactable = (currentPage < totalPages - 1); } public void PrevPage() { currentPage--; UpdateText(); UpdateButtons(); } public void NextPage() { currentPage++; UpdateText(); UpdateButtons(); } public void GoToPage() { int pageNum; if (int.TryParse(pageInput.text, out pageNum)) { currentPage = Mathf.Clamp(pageNum - 1, 0, totalPages - 1); UpdateText(); UpdateButtons(); } pageInput.text = ""; } } ``` 在上述代码中,我们定义了一个PaginationExample类,它包含了三个公共变量:一个Text组件,两个Button组件和一个InputField组件。Start()方法在游戏对象实例化时被调用,它初始化了文本和按钮的状态。UpdateText()方法用于更新文本组件,显示当前页码和总页数。UpdateButtons()方法用于更新按钮组件的状态,禁用无法翻页按钮。PrevPage()和NextPage()方法分别在点击“上一页”和“下一页”按钮时被调用,它们更新当前页码并调用UpdateText()和UpdateButtons()方法更新界面。GoToPage()方法在用户输入页码并点击“跳转”按钮时被调用,它解析输入的页码并将其限制在合法范围内。最后,我们清空输入框中的内容以便下一次使用。 要使用此脚本,您需要将其添加到Canvas游戏对象上,然后将相应的UI元素分配给公共变量。您可以根据需要调整totalPages和其他UI元素的属性,以便适应您的应用程序。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值