NGUI Widget
2015-08-12 12:29
417 查看
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等)。
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等)。
相关文章推荐
- UE4 Editor Viewport Options
- UE4 Editor Viewport Show Flags
- Android应用开发多线程基础之Handler,Looper,Message,MessageQueue,Runnable之间的关系
- Android xUtils 的@Unique说明
- String,StringBuffer与StringBuilder的区别。
- 浅谈Atlassian产品搭建的敏捷管理体系(二)——Confluence使用
- Deep Analysis UIImageJPEGRepresentation&UIImagePNGRepresentation
- RequiredFieldValidator控件验证不能为空时报错多种解决方法以及问题分析
- 关于代码手写UI,xib和StoryBoard
- HDU 1896 【留个使用priority_queue容器的样例】
- DedeCMS Error: (PHP 5.3 and above) Please set 'request_order' ini value to i报错解决方法
- UITableViewCell的选中时的颜色设置
- easyui 窗口的onBeforeClose 使用
- 【Mui】后台框架之表格控件
- UVa 10190 - Divide, But Not Quite Conquer!
- UVa 12167 & HDU 2767 强连通分量 Proving Equivalences
- 使用 spice-guest-tools 让虚拟机支持spicec 双屏显示
- iOS中的NSValue
- KMP算法的next、next value数组代码实现及POJ3461
- iOS UICollectionView实现瀑布流(3)