NGUI -- UIRect

2024-08-20 16:08
文章标签 ngui uirect

本文主要是介绍NGUI -- UIRect,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

注意:本文翻译时NGUI版本已经更新到3.0.7
原文地址: http://www.tasharen.com/forum/index.php?topic=7013

总览
UIRect是所有Widgets和Panels继承的基础组件。你不能把它创建为一个组件,因为它是抽象类。如果你想要某些东西是可见的,你应该创建Widget或Panel。
下面视频展示不同anchor类型的表现: http://www.youtube.com/watch?v=P8JTTE0JBXQ



所有拥有可修改区域的NGUI元素能被固定到其它元素或者设置3D对象上。当选择一个固定点(Anchor Point),你能决定是你所有边都固定到同个对象上,还是不同对象上。选择Unified只会给你选择一个固定对象,Advanced则可以为每边选择一个固定对象。

为了固定一个挂件(Widget),把它移到一个想要放置的位置,选择其中一个物体,并拖放一个你想要它固定到的目标到选项上。anchor的值就会被自动填充。
为了设置一个挂件一直在另一个挂件里面,让它成为那个挂件的孩子结点并选择Unified选项。为了使得你更方便,target widget将自动初始化设置并初始化值。你接着也能在场景视图中像平常那样调整widget,或者是修改选项。

每一边的固定和其它边是独立的,而每一个边你都需要选择它会固定到哪3个位置上。例如对于Left和Right,他们有Left,Center,Right可选。如果不满足你的需要,你可以选择Custom并自己设置值。



Custom设置使用相对值工作。这个值是相对目标的大小,而且也可以让你选择使用其它widget或panel作为目标。
在Left或Right固定点上,0意味着最左,1意味着最右,0.5意味着中间。

选择“Set to Current Position”将简单设置它当前的位置,使用相对定位的百分比来设置。



如果你想要更多控制,或者你只想定位指定一边,那你应该使用Advance 定位类型。同个Advanced模式,你能对每个定位点指定统一的target,有效控制将被定位的边,而当你保留的原来设定的边将保持不变。在上面的图片上,我调整slider的拖柄,我选择为Top和Bottom填充anchor,让它们随着slider的高度改变重置大小,但我留Left和Right保持None。这意味着重新设置slider的水平大小不会影响到拖柄。



最后但也是很重要的,你不需要指定widget或panel作为目标。你也能指定任何一个游戏对象以便让UI挂件跟随它。

类文档
http://tasharen.com/ngui/docs/class_u_i_rect.html

这篇关于NGUI -- UIRect的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1090541

相关文章

王立平-NGUI

NGUI: UI插件 UI : 人机交互界面 UI大部分是2D 目前就总结了这些,后续会补充

NGUI -- UIWidget

注意:本文翻译时NGUI版本已经更新到3.0.7 原文地址: http://www.tasharen.com/forum/index.php?topic=6702.0 总览 UIWidget是一个基础UI组件。最简单来讲,它只是一个你能根据你自己意愿在屏幕上随意定位的矩形。这个挂件,有一个区域,它在运行时是看不到的--它是用于容纳其它组件的理想容器。 UI

NGUI -- UIPanel

注意:本文翻译时NGUI版本已经更新到3.0.7 原文地址: http://www.tasharen.com/forum/index.php?topic=6705 总览 UIPanel是一个保存并管理它下面所有挂件的组件。UIPanel负责通过挂件的几何结构创建真正的draw call。如果没有Panel,没有任何东西能被绘制出来。如果你熟悉Unity,你可以把UIPanel看

NGUI图集Atlas制作简介

此教程属于NGUI的具体操作,主要描述怎么制作一个游戏中的UI,相对来说比较简单,熟能生巧哇,动手操作一遍就可以完全掌握的。 1,在PS里面设计好要做的UI,然后切片成很多个png的图片(这属于美工的活啦,所以会描述的的比较简单点哈) 2,在Unity中 Project下新建一个Folder,F2重命名为ResUI,以后就用来存放所有的UI,在ResUI里面重新新建一个Folder,我

unity开发 --------- NGUI (UITable)

unity开发 --------- NGUI UITable与UIGrid相似,都是实现自动排序的。但UIGrid的元素大小是由我们来指定的,而Table中的元素的大小是根据元素本身计算出来的。 UITable还保存了元素的顺序List<Transform>。每次重排序,都会更新此List。除了要计算元素的Bound和保存List外,其他基本与UIGrid一致。 unity开发 ---

unity开发 --------- NGUI (UIGrid)

unity开发 --------- NGUI  UIGrid可以实现多个gameobject自动排序。可以设定其排序方向、每个元素的宽度,高度等。 public Arrangement arrangement = Arrangement.Horizontal;public int maxPerLine = 0;public float cellWi

unity开发 --------- NGUI(Localization、UILocalize)

unity开发 --------- NGUI NGUI支持动态加载资源功能。比如语言选择:假如当前语言为中文,当将语言更改为英文时,所有UI上的文字也立即变成了英文。此功能是用Localization和UILocalize两个脚本配合完成的。 Localization中记录多种配置方案,当更改配置方案时,由Localization发送通知,通知各UILocalize更新。 NGU

unity开发 --------- NGUI (UIViewPort、UIDraggableCamera)

unity开发 --------- NGUI 前面提到一种实现ScrollView的方法:unity开发 --------- NGUI (UIDragPanelContents、UIDraggablePanel、UICenterOnChild、UIScollBar、SpringPanel) 但上面那种发放有一个缺陷!它要用到shader。也就是说,对于低端设备,就不能以上面那种方式实现拖

unity开发 --------- NGUI (UIDragPanelContents、UIDraggablePanel、UICenterOnChild、UIScollBar、SpringPanel)

unity开发 --------- NGUI 1、实现scroll view功能需要UIDragPanelContents和UIDraggablePanel脚本。 首先,要使用拖拽功能,就要添加UIDraggablePanel脚本,此脚本附加在一个panel上。然后就可以在此panel上放置其它控件了。 若只是简单的将objects放置panel上,objects会挡住pane

unity开发 --------- NGUI

1、unity开发 --------- NGUI (UIRoot, UIAnchor, UIStrech) 2、unity开发 --------- NGUI (UISprite) 3、unity开发 --------- NGUI (UICamera, UIButtonKeys) 4、unity开发 --------- NGUI (UIButtonColor、Twee