最新文章
大小端详解
07-01 16:01
游戏业洗牌下的程序员心声:还在加班么?赚够钱了么?
07-01 15:58
游戏关卡的玩法规划设计思路
06-28 14:38
七个角度总结国内外游戏公司的理念差别
06-28 14:36
在Unity中使用单元测试让你的代码更稳固
06-28 14:33
运营实战分析:游戏运营该如何优雅地背锅
06-27 17:47
Unity3D 使用 NGUI 自带的滚动条
在处理大数据显示时,滚动条是常用的组件。NGUI 自带的滚动条组件功能强大、方便且实用。本文将详细演示如何使用 NGUI 自带的滚动条组件。
测试场景设置
我们需要设置 ImagePanel 的裁剪区域,这样才能正确遮罩不需要显示的区域。之后,使用一张测试图片进行演示,并设置好图片的尺寸信息。
编写脚本
1. 创建脚本
新建一个 C# 脚本,命名为 ImagePanel.cs。以下是该脚本的详细代码:
using UnityEngine;
using System.Collections;
public class ImagePanel : MonoBehaviour
{
// 定义 UITexture 类型的公共变量 uiTexture
public UITexture uiTexture;
// 定义 UIScrollBar 类型的公共变量 scrollBar
public UIScrollBar scrollBar;
void Awake()
{
// 在 Awake 方法中,将滚动条的值初始化为 0
this.scrollBar.value = 0f;
}
public void ScrollChange()
{
// 根据滚动条的值计算并更新 uiTexture 的本地位置
this.uiTexture.transform.localPosition = new Vector3(
this.uiTexture.transform.localPosition.x,
150f + this.scrollBar.value * (uiTexture.height - 300f),
0f
);
}
}
代码解释
uiTexture:用于引用需要进行滚动显示的纹理。scrollBar:引用 NGUI 的滚动条组件。Awake():在脚本实例被加载时调用,将滚动条的值初始化为 0。ScrollChange():当滚动条的值发生变化时调用,根据滚动条的值计算并更新uiTexture的本地位置。
挂载脚本与设置属性
1. 挂载脚本
将 ImagePanel.cs 脚本挂载到 ImagePanel 对象上。
2. 设置滚动条属性
设置滚动条的 OnValueChange 属性,确保滚动条值变化时能调用 ScrollChange 方法。
运行测试
完成上述步骤后,运行游戏,即可看到滚动条的效果。
转载自:最终幻想