Unity中关于NGUI的知识点

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity中关于NGUI的知识点相关的知识,希望对你有一定的参考价值。

UICamera用于处理NGUI中的手势识别(单击、双击、拖拽)

 

**Sprite(精灵)的创建方式:create->Sprite 创建完精灵之后,指定图集(Atlas),然后为Sprite指定图片。Sprite是图集中的一张小图。

特别提醒:千万不要试图通过缩放控件来调整控件的大小,要尽量保证控件的缩放值为Vector.one。通过调整控件的Size值改变大小。

 

**Label 文字标签,用于显示文字。创建方式Creat->Label 需指定NGUI  Font字体

参数说明:

Modifier:字母的大小写设置

Overflow:溢出处理方法

Alignment:文字对齐方式

Spacing:调整文字间距

Max Lines:最大行数 0代表不限行 其他大于0的数值n表示限制在n

 

字体控制扩展:

让一段文字显示不同颜色,使用以下方式:

文字[-][颜色的16进制数字]文字[-]文字

 

**Texture(纹理控件)显示图片

与精灵控件相比,纹理控件只能显示一张图片,而精灵能单独显示一张图片中包含的某张小图。

创建方式:Creat->Texture  指定好要显示的图片,一般情况下,纹理控件是用来显示一张大的背景图片的。

参数说明:

Texture:要显示的图片目标

Material:可以对纹理图片做一些特殊的操作,比如将图片变成圆的等各种形状

 

**Widget:一般用于管理控件的,作为控件的容器

创建方式:Creat->Widget  

参数说明:

Alpha:控制自身以及其子节点的透明度

作用:统一管理其下的子节点

 

UIPanel 统一管理控件,还能依次对控件进行渲染,以Panel为单位

 

**Panel:用于管理控件的,作为控件的容器

创建方式:Creat->Panel

作用:起到统一管理其下的子节点,相对于Widget而言,Panel还能统一的去提升和降低子控件的深度值。

 

高级控件

**ScrollView(滚动视图)Creat->ScrollView

**Grid(网格视图)Creat->Panel->Grid

作用:可以对网格视图下的子控件进行某些规律的布局

参数说明:

Arrangement:排列方式

Cell Height:单元格高度

Cell Width:单元格宽度

Column Limit:(水平排列方式下可以修改):限制单元格的列数0代表不限制

Row Limit:(垂直排列方式下可以修改):限制单元格的行数

**Table(表格视图)Creat->Panel->Table

参数说明:@@@@@

 

**Attach菜单

ColliderAttach->Collider

 

Button Scrip按钮脚本:Attach->Button Scrip

作用:能够让控件在接收到手势的作用下发生一些插值动画(颜色的变化)

参数说明:

Target Tween:指定的控件

Colors:不同状态下的颜色

Sprite:不同状态下的显示的精灵

Pixel Snap:控件的尺寸来适应精灵所用的图片的尺寸

 

监听控件的手势作用:

1》、手动托:创建的脚本可以挂在到任何游戏对象上(最好是在控件父节点上,便于管理),回调函数的命名没有限制

2》、OnClick:创建的脚本必须挂在控件上,点击该控件才会有反应,而且回掉的函数必须命名为OnClick,该函数在控件点击后自动回调

3》、UIEventListener :通过委托的方式给控件添加点击回调

4》、UIEventTrigger:通过给控件添加UIEventTrigger组件来实现点击回调,具体方式如下控件的游戏对象Btn

EventDelegate de=new EventDelegate(脚本实例,”方法名”)

de.parameters[0].obj=Btn;//传给方法的第一个参数,第二个参数是de.parameters[1]依次类推

Btn.AddComponent<UIEventTrigger>().onClick.Add(de);

 

NGUI中的控件想要能对手势作出反应,必要的条件是Collider

 

以上是关于Unity中关于NGUI的知识点的主要内容,如果未能解决你的问题,请参考以下文章

Unity引擎UI模块知识Tree

Unity 各个组件参数总结

一文讲清楚unity中关键目录的相关知识

关于Unity中的NGUI和UGUI

NGUI使用教程 安装NGUI插件

js中关于闭包的那些相关知识点