接下来我们再来看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系列教程三的更多相关文章

  1. NGUI系列教程四(自定义Atlas,Font)

    今天我们来看一下怎么自定义NGUIAtlas,制作属于自己风格的UI.第一部分:自定义 Atlas1 . 首先我们要准备一些图标素材,也就是我们的UI素材,将其导入到unity工程中.2. 全选我们需 ...

  2. NGUI系列教程二

    接下来我们创建一个Label,NGUI->Open the Widget Wizard,打开widgetTool对话框,在Template中选择Label,确定AddTo右侧选项为panel,点 ...

  3. CRL快速开发框架系列教程三(更新数据)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  4. Android Studio系列教程三--快捷键

    Android Studio系列教程三--快捷键 2014 年 12 月 09 日 DevTools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处!http://stormzhang.com/ ...

  5. NGUI系列教程五(角色信息跟随)

    在一些网络游戏中,我们常常可以看到角色的上方显示着角色的名称,等级,血量等信息.它们可以跟随角色移动,并且可以显示和隐藏.今天我们就来学习一下这些功能的实现方法.1. 新建unity工 程,导入NGU ...

  6. 黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (高级)

    原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (高级) 企业库验证应用程序模块之配置文件模式: ...

  7. 黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (初级)

    原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (初级) 企业库提供了一个很强大的验证应用程序模 ...

  8. Fastify 系列教程三 (验证、序列化和生命周期)

    Fastify 系列教程: Fastify 系列教程一 (路由和日志) Fastify 系列教程二 (中间件.钩子函数和装饰器) Fastify 系列教程三 (验证.序列化和生命周期) 验证 Fast ...

  9. webpack4 系列教程(三): 多页面解决方案--提取公共代码

    这节课讲解webpack4打包多页面应用过程中的提取公共代码部分.相比于webpack3,4.0版本用optimization.splitChunks配置替换了3.0版本的CommonsChunkPl ...

随机推荐

  1. android studio的里的 content_XXX_xml问题

    遇到这个问题就是androidStudio的版本问题,androidStudio会出现这个问题是在androidStudio1.4以上版本当遇到这个问题的时候建Activity的时候选择EmptyAc ...

  2. swift 如何使用OC中宏的功能

    swift中没有宏的概念,那么我们在swift使用宏的功能来提高效率呢? 一.使用关键字 let 来声明一个常量 存储相应的值,以下代码声明了常量  myColor 来存储一种指定的颜色 let my ...

  3. Android_ProgressBar

    xml文件: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns ...

  4. IPC with pipes, also dup2 redirect stream handle

    #include <stdio.h> #include <sys/types.h> #include <sys/wait.h> #include <unist ...

  5. 《Mysql 公司职员学习篇》 第三章 小A的疑问

    第三章 小A的疑问  ---- 数据类型和自增列 小A拿着鸡腿,回到了房间里面,咬了一嘴油,说:"我有2个疑问,在Excell里面,像列PetAge(宠物年龄)这样的数字,我一般会设置成数值 ...

  6. bootstrap在iis中发布后无法看到图标,字体样式

      因为框架使用了字体文件来显示矢量的图标,为了能在IIS上正常显示图标,可以通过增加iis的MIME-TYPE来支持图标字体文件:

  7. 使用DS18B20设计温控系统

    datasheet真的是得看看啊,比如DS18B20,不然程序都不好写,美国DALLAS半导体公司推出的数字化温度传感器DS18B20采用单总线协议,即与单片机接口仅需要一个IO口,无需任何外部原件, ...

  8. Ubuntu lnmp安装记录

    参考了: Ubuntu 14.04 LTS 安装 LNMP Nginx\PHP5 (PHP-FPM)\MySQL 在访问 info.php的时候,我显示的是502错误.后面我参考了: Ubuntu15 ...

  9. set_include_path()的用法

    朋友们 开发的时候 ,总会 遇到 include_once()的情况.有时候,我们需要大量的引用文件,但是被引用文件的路径有时候是个问题.  我们可以把 经常要引用 的文件,放在一个 文件夹中,我们取 ...

  10. js运动

    一.offsetWidth / offsetHeight 获取整个块的宽度/高度,包括border 二.clientWidth / clientHeight 获取块的宽度/高度,不包括border 三 ...