【Unity3D】【NGUI】UIWidget

翻译 2013年12月05日 15:17:52

原文:http://www.tasharen.com/forum/index.php?topic=6702.0

NGUI讨论群:333417608

概述


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

Unity3d:NGUI所见即所得之UIWidget , UIGeometry & UIDrawCall

转自:http://dsqiu.iteye.com/blog/1965340 NGUI所见即所得之UIWidget , UIGeometry & UIDrawCall   ...
  • azhou_hui
  • azhou_hui
  • 2015年09月29日 16:43
  • 836

unity ngui UIPanel和UIWidget做为容器使用时的区别(原)

1.UIPanel会产生drawcall,需widget不会,当用panel做空
  • u014635337
  • u014635337
  • 2014年10月20日 12:09
  • 3021

unity3d ngui UIAnchor UIWidget 以及Anchors属性(原)

anchor用来对齐设置屏幕,其中
  • u014635337
  • u014635337
  • 2014年09月18日 11:56
  • 4145

NGUI控件说明(中文) UIWidget

原文:http://www.tasharen.com/forum/index.php?topic=6702.0 NGUI讨论群:333417608 概述 UIWidget是NGUI的基础组件。简单...
  • huang9012
  • huang9012
  • 2014年02月18日 14:43
  • 8936

NGUI UILabel渲染大小

项目中需要文字的背景框自适应文字内容的宽和高,宽很方便确定,在UILabel面板里有这个属性值: 这里的Max Width就是每一行的最大像素个数,Max Lines设置0的意思是没有最大行...
  • tyxkzzf
  • tyxkzzf
  • 2015年05月27日 19:03
  • 3926

NGUI源码分析(二) UIWidget

UIWidget是所有UI组件的基类,持有UI组件的大小,锚点,顶点,颜色,Alpha等所有跟渲染相关的属性。 关键属性:     protected Pivot mPivot //锚点    ...
  • cbbbc
  • cbbbc
  • 2017年05月02日 16:53
  • 242

NGUI自动设置 Panel 深度、自动设置UIWidget(Sprite/Label等)深度(按照Hierarchy 顺序从上到下 Depth 递增)

最开始使用 NGUI的时候,一直在接收NGUI的各种设定。后面项目用UGUI,相比NGUI更方便些,但是可控性却少了,现在又开始新项目,重归NGUI。但是又开始纠结Panel的深度管理。项目中设计的是...
  • cp790621656
  • cp790621656
  • 2016年09月05日 01:54
  • 1485

unity3D游戏开发十五之NGUI二

接下来我们讲解下UILabel,UILabel是用来显示文本的脚本,继承自UIWidget。
  • kuloveyouwei
  • kuloveyouwei
  • 2014年04月15日 16:42
  • 8559

NGUI源码分析(四) 关于Anchor

老版NGUI的Example 1里面提供演示NGUI中使用UIAnchor组件实现GUI对齐功能,新版本的NGUI的Example例子貌似不再使用UIAnchor了,而是演示Widget内置的Anch...
  • cbbbc
  • cbbbc
  • 2017年05月02日 19:41
  • 299

Unity3D_NGUI_性能优化实践_CPU卡顿(五)

Unity3D_NGUI_性能优化实践_CPU卡顿 ...
  • ywjun0919
  • ywjun0919
  • 2016年04月27日 20:15
  • 3802
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【Unity3D】【NGUI】UIWidget
举报原因:
原因补充:

(最多只允许输入30个字)