NGUI控件

NGUI学习笔记

一、NGUI的直接用法

1. Attach a Collider:表示为NGUI的某些物体添加碰撞器,如果界面是用NGUI做的,只能这样添加。(注:用Component添加无效)。

2. Attach an Anchor:表示为该物体添加了UIAnchor脚本,作用是避免像素偏移的问题

3. Attach UIStretch:表示为该物体添加了UIStretch脚本,提供缩放功能

4. Make Pixel Perfect:表示自动为你调整Transform的尺寸

5. Create a Panel:表示创建一个面,相当于一个容器,里面的Button,Label,CheckBox控件全部包含在Panel里面

6. Create a Widget:表示创建一个窗口小部件,比如Button,Label,Sprite等

7. Create a New UI:表示创建一个新的UI界面

8. Font Maker:创建字体

9. Atlas Maker:创建图集

二、关于组件(Component)> NGUI > Examples下的作用

1.PanWithMouse,表示你赋予的该物体会根据鼠标的变换而移动(漂浮的感觉)

2.LookAtTarget,表示该物体朝向你的目标物体(Target)

3.LoadLevelOnClick,表示点击按钮后加载到另外一个场景,在LevelName写上你所要加载的场景名即可

4.Spin,旋转

5.SpinWithMouse,跟着鼠标旋转

6.TypewriterEffect,作用于标签,打字风格

7.Chat Input,将输入框里面的内容提交到文本框里面去

三、关于组件(Component)> NGUI > Interaction下的作用

1.Button:

A:UIButton:鼠标放到按钮上,改变目标物体的颜色

B:UIButtonScale:鼠标放到按钮上,目标物体变大或缩小,在Hover下调节x,y,z的比例 C:UIButtonOffset:鼠标放到按钮上,目标物体挪动位置

D:UIButtonSound:鼠标点击按钮,发出声音

E:UIButtonActivate:鼠标点击按钮后,目标物体由禁用状态到启用状态(触发该物体) F:UIButtonColor:鼠标移动至按钮后,目标物体变颜色

G:UIButtonRotation:鼠标移动至按钮后,目标物体旋转一定的度数,在Hover下调节x,y,z旋转的度数

H:UIButtonTween:鼠标点击了按钮后,目标物体产生变换,必须给目标物体添加Tween组件里面的变换(例:transform变换,position变换,Alpha变换等等),并在开始enable目标物体的变换,因为此变换是在点击鼠标后才产生,要不然就会在开始运行游戏的时候,它就产生变换了

I:UIButtonPlayAnimation:鼠标点击按钮后,目标动画播放(必须为目标物体添加Animation) J:UIButton Message:传递消息,写一个公共函数,告诉你所要传递消息的内容,将此脚本放到你的目标物体上,然后写上你所要传递消息的函数名字

2.CheckBox:

A:UICheckBox:用于多选框的选择与取消

B:UICheckBoxControlledObject:如果取消这个多选框的选择,那么目标物体以及所有子物体全部被禁用

C:UICheckBoxControlledComponent:若添加此脚本到CheckBox中,如果选择了该多选按钮,那么此脚本的Target将被显示,如果没有选择该多选按钮,那么此脚本的Target将被隐藏

3.Drag:

A:UIDragCamera:为某个物体添加该组件,然后为Camera添加UIDraggableCamera组件,表示该摄像机允许被拖拽,然后将此摄像机放到UIDragCamera的目标摄像机下,拖拽该物体,摄像机的位置就会改变

B:UIDraggableCamera:表示该摄像机是允许被拖拽的

C:UIDraggablePanel:表示该面(容器)是允许被拖拽的

D:UIDragObject:拖动该物体,被允许拖拽的物体会被拖拽,在此被允许拖动的物体必须放到目标物体之下

E:UIDragPanelContents:表示该面的所有组件也是允许被拖拽的

4.其他

A:UIForward Events:表示从对象到另一个转发事件(还需要详细了解)

B:UIGrid:表示为该物体添加网格,在该物体下可以包含许多的Item,在Arrangemwnt中可以选择竖直或者水平排列,Cell Width和Cell Height代表每个单元格的宽度和高度

C:UICenterOnChild:常用于拖拽事件中,给Panel添加UIDraggablePanel脚本,然后给你想要拖拽的物体添加UIDragObject或者是UIDragPanelContents,然后给网格根目录添加UICenterOnChild,不管如何拖动容器里面的物体,网格始终保持水平或垂直居中状态

D:UIInputValidator:用于输入框中(Input),给输入框添加此脚本后,在Logic有多种选择,None代表没验证,任何字符都可以输入(汉语除外),Integer表示只能输入整数,不能输入英文以及各种特殊字符,Double表示只能输入浮点数,Alphanumeric表示什么英文和数字和特殊字符都可以输入,Username表示可以输入英文、数字,一些特殊字符(小数点除外),Name表示只能输入英文和特殊字符(小数点除外)

E:UIPanelAlpha:可用于任何控件,添加此脚本给物体,在Alpha中可以调节参数,0表示全透明,0-1表示越来越不透明,1以上的数字表示完全不透明

F:UIPopupList:用于下拉列表框(PopupList),通过NGUI创建PopupList控件时,就添加了此脚本,在Options中可以添加下拉列表框的子项

G:UIScrollBar:用于滚动条,Value表示当前滚动条的位置,Size表示一个滚动条的一个单元大小,Alpha表示滚动条的透明度,Direction可以选择滚动条是垂直状态还是水平状态 H:UISlider:用于滑动框,Value表示此滑动框被填充的比例,Direction表示可以选择滑动框是垂直的还是水平的

I:UISoundVolume:用于Slider控件中……

J:UITable:添加表格,Columns表示此表格的列数,Down表示一列里面的控件从上往下排列,Up表示一列里面的控件从下往上排列,Padding表示各个控件的距离

四、关于组件(Component)> NGUI > Tween下的作用

1.Spring Position:表示变换物体的位置,Target是目标位置,物体会从开始的位置,移动到目标位置处

2.Tween Alpha:表示物体的透明度从某一个值到另一个值,From表示开始的值,To表示之后的值

3.Tween Color:表示物体的颜色从某一个值到另一个值,From表示开始的颜色,To表示之后的颜色

4.Tween Position:表示物体的坐标从一个位置到另一个位置,From表示开始的位置,To表示之后的位置

5.Tween Rotation:表示物体从一个角度到另一个角度的变换,From表示开始的角度,To表示之后的角度

6.Tween Scale:表示物体的大小从某一个值到另一个值的变换,From表示开始的大小,To表示之后的大小

7.Tween Transform:表示物体的Transform变换,From表示开始的物体位置,To表示之后的物体位置

五、创建控件(NGUI > Create a Widget)

A:创建标签:Label

B:创建下拉列表框:Popup List

C:创建进度条:Progress Bar

D:创建滑动条:Slider

E:创建输入框:Input

F:创建滚动条:Scroll Bar

G:创建按钮:Button

H:创建多选框:CheckBox

I:创建精灵:精灵也就是从一张大的图集中获取一个小的图片

Sprite:一般的精灵

Sliced Sprite:带有固定边框的精灵

Tiled Sprite:缩放重复填充整个区域的精灵(例如铁丝网)

Filled Sprite:每个都会有一个单独的参数来控制那些可见的,常用于滚动条和进度条 J:创建输入框:Input

时间: 2024-11-16 11:03:32

NGUI控件的相关文章

【基础】Unity中背景、3D object、NGUI控件共存

大部分U3D的游戏开发中都需要用NGUI这款界面控件,NGUI如何和3D物体共存是刚使用U3D时最常问的问题. 笔者在当前的项目中还需要加入一个背景图片,因此这里将方法统一讲一下,层次结构需求是:背景图片(底)——3D物体(中)——NGUI控件(顶) 以下是过程: 1.先来考虑3D物体和NGUI的共存,那么首先New一个场景 2.先不管Main Camera,我们来设置NGUI部分,Create一个2D UI,再拖一个NGUI的Button进去. Create一个Cube表示场景中的3D物体,为

NGUI控件不能拖拽问题

NGUI3.6版本 第一种方案: 1.  NGUI Options  Handles -> turn off         拖动打开 第二种方案: 1.  勾选上Edit –> Project Setting –> Physics –>Layer Collision Matrix勾选上UI

Unity NGUI 描点控件的位移动画

要让一个描点的控件动画移动到一个Position,可以用TweenPosition,但是这个只能用在Position是固定的情况下,而且不能根据分辨率适配来进行移动.以NGUI自带的示例场景"Example 1 - Anchors"为例,假设要让"Left"移动到"Top Right",且不管任意分辨率都需要达到这个效果.这里的方法是修改TweenPosition代码,让其支持传入目标的Transform,而这个目标即是也被描点的控件. 打开Tw

unity4.6 Beta版 UI控件之Button

最近需求,需要用到4.6版本uGui了,所以抽时间来学习学习,就UI控件在Unity工具里创建预设这块来说相比较于NGUI,我觉得是没有什么太大的区别的. 比如:Canvas--Camera . Text--Label.ImageMask-- Panel 等. 可能是目前4.6版本还不稳定,其UI控件下所挂载的组件脚本代码我们是没法直接点击脚本看到更别说在代码里直接调出修改了,这点就目前来说确实没有NGUI方便. 好了"方不方便"恐怕并不能直接影响每次unity版本的更新带给我们的惊喜

用uGUI开发自定义Toggle Slider控件

一.前言 写完<Unity4.6新UI系统初探>后,我模仿手机上的UI分别用uGui和NGUI做了一个仅用作演示的ToggleSlider,我认为这个小小的控件已能体现自定义控件的开发过程.由于手头上没有mac版,暂时未能真机测试,PC上的效果如下: 二.制作过程 完整工程托管于github,分为uGui和NGUI两个project.考虑到版权问题,工程里不含NGUI,同学们需自行将NGUI导进工程.NGUI需要Unity 4.5,uGui需要Unity 4.6. 三.功能点 滑块可以拖动,从

Unity 通过Animation实现控件位置的转换

Unity版本:4.5.1 NGUI版本:3.6.5 参考链接:http://blog.csdn.net/unity3d_xyz/article/details/23035521,作者:CSDN inspironx 在Unity中可以用Animation实现控件位置的转换,大小的变化等等,即用动画实现,NGUI中可以用Tween实现.这里用Panel的位置转换为例说明. 1.创建一个Panel面板,如下图: 2.为Panel添加Animation组件: 可以看到Panel中Animation组件

unity5.3+Easytouch4.3——EasyTouch及摇杆控件介绍

一.EasyTouch插件介绍 本文总结时,目前网上可以很方便的下载到EasyTouch4.3版本(额--你懂什么叫很方便的),由于某些版本和版本之间还是有很多改动,在此特意声明一下该文使用的版本是4.3,但插件的大体框架不会变动很多,也可以参考一下.有能力购买正版的童鞋也可以到官网支持一下EasyTouch. EasyTouch4.3版本开始已经支持UGUI,所以unity版本低于4.6的话是将不能使用这个版本EasyTouch,目前EasyTouch4.3亲测可以结合unity4.6~5.3

UGUI Button控件

今天一起来学习下Button控件, Button控件其实是由Text,Button,Image组件形成的. 这里就简单介绍下Button组件 Interactable: 代表该组件是否进行交互, 我们以前让组件是否进行交互通常 组件.Enable = false 这样的.  现在只需要改变属性即可 Transition:这单词翻译过来是过渡的意思, 让某种状态 - > 过渡 - > 另一个状态.  它有四种过渡类型: None : 无过渡 Color Tint:      颜色变化过渡 Spr

在DataGridView控件中实现冻结列分界线

我们在使用Office Excel的时候,有很多时候需要冻结行或者列.这时,Excel会在冻结的行列和非冻结的区域之间绘制上一条明显的黑线.如下图: (图1) WinForm下的DataGridView控件也能实现类似的冻结行或者列的功能(参见:http://msdn.microsoft.com/zh-cn/library/28e9w2e1(VS.85).aspx) ,但是呢,DataGridView控件默认不会在冻结列或者行的分界处绘制一个明显的分界线,这样的话,最终用户很难注意到当前有列或者