NGUI系列教程三
接下来我们再来看Progress Bar和Slider,对比参数我们可以发现,Progress Bar和slider的明显区别在于slider多一个Thumb选项,这里的Thumb就是我们拖动的时候点击的按钮。

Empty 和Full选项其实就是前景和背景的Sprite。这里大家都已经熟悉了,我们看Slider和ProgressBar的根节点,也可以发现,Slider之比ProgeressBar 多一个BoxCollider,参数对比如图

Value :当前值
Steps:可以理解为将最大值等分的份数
Foreground: 前景Sprite,
Thumb:只有UIslider有,ProgressBar没有
Direction:方向,选择是垂直还是水平。
EventRecv:接收事件的物体
Function:事件响应的名称
我们再看Slider的Thumb物体,可以发现它和Button有点类似,其实就是Spirit和Button结合,里面的代码我们也都很熟悉了。
CheckBox,打开WidgetWizard(菜单NGUIàOpen the Widget Wizard)打开Widget Tool窗口,在Template中选择Checkbox,我们看到checkbox只有background(背景)和checkmark(复选标 识),创建一个checkbox,我们可以发现,checkbox包含三个子物体,background,checkmark和一个label三个物体都 是我们熟悉的Sprite和Label。
在根节点Checkbox物体上附加的代码很多我们也都熟悉,只有一个新的UICheckbox,

CheckSprite就是CheckMark
CheckAnimation默认为空
Instant Tween,从代码中看,此选项的作用可以让Checkmark渐变消失或出现。
StartChecked,初始状态是否选择
Radio Button Root,在多个选项只能选一个的情况下,我们可以做多个CheckBox,把它们都作为一个物体的子物体,然后把这个物体作为每个按钮的Radio Button Root,这样可以实现只能单选一个按钮的情况,就是互斥选项。
Option Can Be None,选项可空,如果勾选,则代表可以不选择。
Event Reciver:事件响应接收物体
Function Name 事件名称。
示例:
在这里我们做一个小的示例说明互斥选项,选择菜单NGUI->Create a Panel,创建一个新的Panel2,然后我们在这个Panel下创建几个checkbox,设置Checkbox的RadioButton Root为Panel2,运行,点击其中的任何一个checkbox查看效果。
PopupList(弹出式列表框)、PopupMenu(弹出式菜单):打开Widget Wizard(菜单NGUIàOpenthe Widget Wizard)打开Widget Tool窗口,在Template中选择PopUp List,我们看到它有前景、背景、高亮等选项可选,选择好之后点击Add To ,创建一个Popup List,,这里属性很多我们都熟悉了,只有一个UIPopup List陌生,它的属性窗口如图

其中Text Label、Background、Highlight对应我们刚才选择的三个。Options列表框列出所有选项,如果我们想添加选项,在这里直接添加 即可。Selection表示当前选择选项。Position表示弹出的列表框在主窗体上的位置,TextScale,字体缩放。再往下是三个颜色。
Padding表示选项排列间距。PopupMenu和上述情况类似,这里大家可以自己试着创建一个查看效果。
ScrollBar滚动条:滚动条创建比较简单,大家可以试着自己创建一个看看效果,它的使用需要结合别的控件才能发挥它强大的作用,这里我们留到以后的课程讲解。
声明: 本文由(zqcyou)原创编译,转载请保留链接: NGUI系列教程三
NGUI系列教程三的更多相关文章
- NGUI系列教程四(自定义Atlas,Font)
今天我们来看一下怎么自定义NGUIAtlas,制作属于自己风格的UI.第一部分:自定义 Atlas1 . 首先我们要准备一些图标素材,也就是我们的UI素材,将其导入到unity工程中.2. 全选我们需 ...
- NGUI系列教程二
接下来我们创建一个Label,NGUI->Open the Widget Wizard,打开widgetTool对话框,在Template中选择Label,确定AddTo右侧选项为panel,点 ...
- CRL快速开发框架系列教程三(更新数据)
本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...
- Android Studio系列教程三--快捷键
Android Studio系列教程三--快捷键 2014 年 12 月 09 日 DevTools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处!http://stormzhang.com/ ...
- NGUI系列教程五(角色信息跟随)
在一些网络游戏中,我们常常可以看到角色的上方显示着角色的名称,等级,血量等信息.它们可以跟随角色移动,并且可以显示和隐藏.今天我们就来学习一下这些功能的实现方法.1. 新建unity工 程,导入NGU ...
- 黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (高级)
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (高级) 企业库验证应用程序模块之配置文件模式: ...
- 黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (初级)
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (初级) 企业库提供了一个很强大的验证应用程序模 ...
- Fastify 系列教程三 (验证、序列化和生命周期)
Fastify 系列教程: Fastify 系列教程一 (路由和日志) Fastify 系列教程二 (中间件.钩子函数和装饰器) Fastify 系列教程三 (验证.序列化和生命周期) 验证 Fast ...
- webpack4 系列教程(三): 多页面解决方案--提取公共代码
这节课讲解webpack4打包多页面应用过程中的提取公共代码部分.相比于webpack3,4.0版本用optimization.splitChunks配置替换了3.0版本的CommonsChunkPl ...
随机推荐
- if elseif else
1)if,else if需要接判断表达式,只有在满足条件的时候执行而else语句是在前面条件都不满足的时候才能执行(2) 一个if...else if...else语句中可以有多个else if语句, ...
- 路径(keyPath)、键值编码(KVC)和键值观察(KVO)
键路径 在一个给定的实体中,同一个属性的所有值具有相同的数据类型. 键-值编码技术用于进行这样的查找—它是一种间接访问对象属性的机制. - 键路径是一个由用点作分隔符的键组成的字符串,用于指定一个连接 ...
- 如何实现XA式、非XA式Spring分布式事务
Spring应用的几种事务处理机制 Java Transaction API和XA协议是Spring常用的分布式事务机制,不过你可以选择选择其他的实现方式.理想的实现取决于你的应用程序使用何种资源,你 ...
- 区块上的三角形状的css写法
.navbar .navline > .dropdown > .dropdown-menu:before { content: ''; display: inline-block; bor ...
- logstash-input-file 参数说明
参数 close_older close_older: # This has different implications depending on if a file is being tailed ...
- hdf5 api
https://www.physics.ohio-state.edu/~wilkins/computing/HDF/hdf5tutorial/index.html
- PHP的几个特殊符号意义
有些特殊符号需要特殊记忆,希望对你的编程有帮助! 方法/步骤 1 $ 这个符号的意思是:变量 2 & 这个符号的意思是:变量的地址(加在变量前) 3 @ 这个符号的意思是:不显示错误信息(加在 ...
- ajax_jsonp —— 跨域
JSONP:原理是script标签 一.抓包 二.不用每次都连接 localhost 的方法 三.抓包后所需的参数 su?:后面跟的是传递过去的参数. cb:是 callback 后面跟的是对返回 ...
- 默认安装wamp修改MySQL密码
首先,通过WAMP打开mysql控制台. 提示输入密码,因为现在是空,所以直接按回车. 然后输入“use mysql”,意思是使用mysql这个数据库,提示“Database changed”就行. ...
- 在DataTable中添加行和列数据
DataRow newRow = dtResult.NewRow(); newRow["ProName"] = "名字"; newRow["ProPr ...