您的位置:首页 > 产品设计 > UI/UE

NGUI控件说明——UIWidget

2015-05-10 17:40 411 查看
NGUI版本:3.0.x

UIWidget是NGUI的基础组件。简单来说,就是一个你可以放在屏幕任意位置的矩形框。widget会有一定的面积(如下图的白色框范围),但是在运行的时候(Game View)是完全不可见的,所以非常适合当做其他组件的容器(让所有的sprite或者label等以它进行各种对齐)。



UIWidget 也被用来当做所有NGUI元素的基类——所有你创建的sprites和labels。UILabel,UISprite,UITexture和UI2DSprite(Unity3D 4.3版本)都继承自UIWidget。

把鼠标放到矩形框里面来移动它的位置。

拖动蓝色圆点进行缩放

鼠标放在蓝色原点外面一些,就可以旋转widget。按住shift可以微调(windows上是ctrl)。

加入collider就可以让这个区域接受事件。可以在这个widget上定位其他widgets,具体查看UIAnchor。

在给widget加了box collider之后,widget的inspector上会有一个新的选项:Box Collider。默认是勾选的,它会自动调整使得collider的size和widget的尺寸一样(dimensions)。

增加UIWidget的快捷键是alt+shift+w

widget的position在代码里面通过Transform组件获取——和其他的场景中物体一样。widget的位置与它的Pivot有关。pivot可以理解为这个widget的旋转中心。

Widgets也有Depth属性,控制他们被点击时的响应顺序(在Sprite和Label中也用来控制渲染顺序,值越大,显示的时候越靠前)。在Scene View中右键widget可以看到depth的排序。右键后会看见一个列表(如下图),所有在鼠标位置的widget都会列出来。最上面的就是显示在最前面的,也会最先接收事件。



这个菜单也提供增加兄弟或者子节点的widget(包括sprite、label等)。

类文档

http://tasharen.com/ngui/docs/class_u_i_widget.html

#cyg {
font: 14px "微软雅黑";
line-height: 1.6em;
}
#cyg h2 {
margin: 1.33em 0 1em 0;
font-size: 16px;
}
#cyg h3 {
margin: 1.33em 0 1em 0;
font-size: 14px;
}
#cyg p {
margin: 1em 0;
}
#cyg_code {
max-height: 320px;
overflow-y: hidden;
margin: 1em 0;
padding-left: 40px;
border: 2px solid rgb(200, 200, 200);
background: rgb(231, 229, 220);
font: 12px Courier,Arial,sans-serif;
list-style: decimal;
}
#cyg_code li {
height: 16px;
line-height: 16px;
padding: 0 1em;
border-left: 3px solid rgb(108, 226, 108);
background: rgb(240, 240, 240);
white-space: pre;
}
#cyg_code em {
font-style: normal;
color: rgb(117, 113, 94);
}
#cyg_code strong {
font-weight: normal;
color: rgb(153, 129, 255);
}
#cyg_code b {
font-weight: normal;
color: rgb(166, 226, 46);
}
#cyg_code var {
color: rgb(230, 191, 77);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: