Unity UGUI的Slider(滑动条)件组的介绍及使用
Unity UGUI的Slider(滑动条)件组的介绍及使用
1. 什么是Slider组件?
Slider(滑动条)是Unity UGUI中的一种常用UI组件用,于在用户界面中实现滑动选择的功能。通过拖动滑块,用户可以选择一个数值范围的内值。
2. Slider组件的工作原理
Slider组件由两部分组成:滑动区域和滑块。滑动区域用于显示滑动条的背景,而滑块则表示当前的数值位置。用户可以通过拖动滑块来改变数值。
3. Slider组件的常用属性
- Min Value(最小值):滑动的条值小最 **。
- Max Value最(大)值:滑动条的最值大。
- Value(当前值):滑动条的当前值。
- Whole Numbers(只允许整值数整选择许允只是否:)数。
- Direction(方向):滑动条的方向,可以是水平或垂直。
- Handle Slide Area(滑块)域区动滑:滑块可以在滑动区域内滑动。
- Handle Slide Range(滑块滑动范围):滑块在动滑区域内滑的动范围。
4. Slider组常的件用函数
- SetValueWithoutNotify(float value):设置滑动条的当前值,但不触发OnValueChanged事件。
- OnValueChanged(UnityAction action):当滑动条的值发生变化时触发的事件。
5. 示例代码
示例1:基本使用
using UnityEngine;
using UnityEngine.UI;
public class SliderExample : MonoBehaviour
{
public Slider slider;
private void Start()
{
slider.onValueChanged.AddListener(OnSliderValueChanged);
}
private void OnSliderValueChanged(float value)
{
Debug.Log("Slider value changed: " + value);
}
}
操作步骤:
- 创建一个空物体,并将Slider组件添加到该物体上2。
. 将SliderExample脚本添加到该物体上。 - 在Inspector面板中,将SliderExample脚本的slider字段关联到Slider组件。
- 运行游戏,拖动滑块,观察控制台输出。
注意事项:
- 通过监听Slider的onValueChanged事件,可以在滑动条的值发生变化时执行自定义的逻辑。
示例2:限制数值范围
using UnityEngine;
using UnityEngine.UI;
public class SliderExample : MonoBehaviour
{
public Slider slider;
private void Start()
{
slider.minValue = 0;
slider.maxValue = 100;
slider.wholeNumbers = true;
}
}
操作步骤:
- 创建一个空物体,并将Slider件组添加到该物体上。
- 将SliderExample脚本到添加该物体上。
- 在Inspector面板中,将SliderExample脚本的slider字段关联到Slider组件,戏游行 运.4。
观察滑动条的数值范围和是否只允许选择整数值。
注意事项:
- 通过设置minValue和maxValue属性,可以限制滑动条的数值范围。
- 通过设置wholeNumbers属性为true,可以只允许选择整数值。
示例3:水平滑动条
using UnityEngine;
using UnityEngine.UI;
public class SliderExample : MonoBehaviour
{
public Slider slider;
private void Start()
{
slider.direction = Slider.Direction.LeftToRight;
}
}
步操作骤:
- 创建一个空物体,并将Slider组件添加到该物体上。
- 将SliderExample脚本添加到该物体上。
- 在Inspector面板中,将SliderExample脚本的slider字段关联到Slider组件。
- 运行游戏,观察滑动条的方向。
注意事项:
- 通过设置direction属性为LeftToRight,可以将滑动条设置为水平方向。
示例4:垂直滑动条
using UnityEngine;
using UnityEngine.UI;
public class SliderExample : MonoBehaviour
{
public Slider slider;
private void Start()
{
slider.direction = Slider.Direction.BottomToTop;
}
}
操作步骤:
- 创建一个空物体,并将Slider组件添加到该物上体。
- 将SliderExample脚本添加到该物体上。
- 在Inspector面板中,将SliderExample脚本的slider字段关联到Slider组件。
- 运行游戏,观察滑动条的方向。
注意事项:
- 通过设置direction属性为BottomToTop,可以将滑动条设置为垂直方向。
示例5:设置滑块滑动范围
using UnityEngine;
using UnityEngine.UI;
public class SliderExample : MonoBehaviour
{
public Slider slider ;
private void Start()
{
slider.handleRect.GetComponentRectTransform<>().sizeDelta = new Vector2(20, 20);
}
}
操作步骤:
- 创建一个空物体,并将Slider组件添加到该物体上。
- 将SliderExample脚本添加到该物体上。
- 在Inspector面板中,将SliderExample脚本的slider字段关联到Slider组件。
- 运行游戏,观察滑动条的滑块大小。
注意事项:
- 通过设置滑块的RectTransform的sizeDelta属性,可以调整滑块的大小。
参考资料
Unity UGUI的Slider(滑动条)件组的介绍及使用的更多相关文章
- 关于Unity中NGUI的Checkbox复选框、Slider滑动条和Button的6种触发回调事件的方式
Checkbox复选框 1.创建一个NGUI背景Sprite1节点 2.打开NGUI---->Open---->Prefab Toolbar---->选择一个复选框节点,拖拽到背景节 ...
- 第二百二十节,jQuery EasyUI,Slider(滑动条)组件
jQuery EasyUI,Slider(滑动条)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI 中 Slider(滑动条)组件的使用方法,这个 ...
- Slider( 滑动条) 组件
本节课重点了解 EasyUI 中 Slider(滑动条)组件的使用方法,这个组件依赖于Draggable(拖动)组件. 一. 加载方式//class 加载方式<input class=" ...
- Slider 滑动条效果
转载自:http://www.cnblogs.com/cloudgamer/archive/2008/12/24/Slider.html 这个滑动条(拖动条)效果,一开始是参考了BlueDestiny ...
- easyUI之slider滑动条框
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <hea ...
- Unity UGUI HUD 怪物血条实现
首先做一个血条,创建一个名为Follow3DObject的脚本添加到血条控件上. Follow3DObject.cs的代码如下: using UnityEngine; using System.Col ...
- WPF Slider滑动条的颜色修改
效果如下: 鄙人虽然开发WPF有些时间,但之前一直是一些简单Template和Style改改之类的工作,并没有深入研究过.此次为了完成工作,首先也是网上搜了半天,没有找到合适的代码直接拷贝(搜索能力待 ...
- Slider滑动条
Slider的Value Changed事件一般与Label结合让其显示数值 int mySlider = (int)sender.value; self.sliderLabel.text = [NS ...
- Unity UGUI
超详细的基础教程传送门:(持续更新中) Unity UGUI之Canvas&EventSystem:http://blog.csdn.net/qq992817263/article/detai ...
- 利用OpenCV和MFC对话框建设一个有滑动条控制的播放器--转
(一)问题的提出: OpenCV有一个很简单的播放视频文件并加载滑动条的程序,但是如何用MFC对话框来创建一个有滑动条控制的播放器呢,网络上四处搜索都没有代码可以参考,下的都是些骗子链接文件,很过分, ...
随机推荐
- 函数strncpy和memcpy的区别
1定义 1.1 memcpy void *memcpy(void *destin, void *source, unsigned n); 参数 *destin ---- 需要粘贴的新数据(地址) *s ...
- L2-035 完全二叉树的层序遍历
题目描述: 一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是完美二叉树.对于深度为 D 的,有 N 个结点的二叉树,若其结点对应于相同深度完美二叉树的层序遍历的前 N 个结点,这样的树就 ...
- NIST SP 800-37 信息系统和组织的风险管理框架 安全和隐私的系统生命周期方法
NIST SP 800-37 信息系统和组织的风险管理框架 安全和隐私的系统生命周期方法 它的结构分为3个层级:组织视图.业务任务和信息系统视图. 800-37是NIST SP 800-37的简称,即 ...
- 生信服务器 | Linux 时间戳和标准时间
在 Linux 系统中,有许多场合都使用时间戳的方式表示时间,即从1970年1月1日起至当前的天数或秒数.如/etc/shadow里的密码更改日期和失效日期,还有代理服务器的访问日志对访问时间的记录等 ...
- Python 日期和时间函数使用指南
在本教程中,我们将介绍 python 的 datetime 模块以及如何使用它来处理日期.时间,以及日期时间的格式化处理.它包含各种实用示例,可帮助您通过 python 函数更加快捷高效进行日期和时间 ...
- 浙大Jarvisoj [XMAN]level6 Writeup
分析代码 初始化 0x0804A2EC:保存malloc(0xC10)返回的指针 malloc(0xC10) 0 1 ... ... value note 总数:256 已使用 note 数 0 一. ...
- CF1442D Sum
题意 有 \(n\) 个不降的非负整数数组,每个数组可以不取或取一个前缀,总共要取 \(k\) 个元素,问取到的和最大多少. 题解 结论题,但是想到结论还不会. 首先,我们只会有一个数组没选完,其它要 ...
- KeyChrone-K8使用体验
盛名之下,其实难副.我是这应该是我对K8的初上手体验.抛开Mac的使用者,我想其他人应该很难对这款键盘爱得起来.一直以来对手头的Filco的有线比较介意,想换个无线键盘.因为平时调程序比较多,所以F功 ...
- C# - XMLHelper :一个操作XML的简单类库
下午写了一个操作XML文件的类库,后来不用了,水篇文章存个档 整体功能 XMLHelper.cs主要提供以下功能: 加载XML文件:从文件路径或字符串中加载XML文档,并返回XmlDocument对象 ...
- 检测到 #include 错误。请更新 includePath。已为此翻译单元 禁用波形曲线
也有可能是VSCode抽风了 重启就好