Unity插件-NGUI

1. 基本使用
  1. NGUI -> 选项 -> Reset Perfab Toolbar,显示预制体UI组件,可以直接拖拽到场景中。
  2. 使用NGUI,必须要有一个UIRoot作为父组件
  3. 在场景中的UIRoot中右键单击,然后点Create来创建组件。
    注意:必须将Panel展开,否则无法进行该操作
  4. UICamera.isOverUI 当鼠标在NGUI上时,该数值为True,如果取消碰撞器,那么该UI不会被判定。

Another控件
让ui自适应

名称功能
type是否启用锚点
executeui自适应的更新方式
target依照哪一个物体进行ui自适应

这样,控件的宽高和位置就会以个物件的各个中心点位置保持绝对距离,从而实现自适应

名称功能
left与左边界固定值
right与右边界固定值
center与中间固定值(保持大小不变)

type高级可以依照不同物体进行自适应

// 代码添加监听某个组件值改变
UIXXX.onChange.Add(new EventDelegate(this, "Onchanged")
2. Label组件

文本组件

名称功能
overflow设置文字超出限制时是隐藏还是自动缩小
alignment文本排列方式
keep crisp动态字体锐化
gradient设置文本过渡
effect字体效果
spaceing字体间隔
max lines多少行来显示字体
max lines多少行来显示字体

获取控件文本:GetComponent<UILabel>().text
[ff]:表示该标签之后的文本亮度

方法描述
SetCurrentProgress用于slider值改变时,为一个0~1的小数
SetCurrentPercent用于slider值改变时,为一个百分数
SetCurrentSelection用于下拉列表值改变时 ,为一个字符串
3. Sprite组件

图片组件
NGUI -> Open -> Atlas Maker 打开图形处理器。
New 新建纹理集。点击要添加的图片,即可将图片加入当前纹理集。
点击已经添加的图片即可对其进行编辑。(注意打开右下角的Sprite详情方便观察效果)。

名称功能
type设置纹理平铺方式。
高级 全设置成已平铺,效果等同于原本的平铺效果。
Pivot设置中心点
Depth深度,决定哪一个在上面
Aspect设置纵横比
4. Panel组件

面板

名称功能
alpha透明度控件
clipping使用哪一种图层蒙版

图层蒙版

名称功能
soft Clip矩形蒙版
texture Mask图像蒙版
5. Button组件

按钮组件
想要使用button组件,必须先为那个对象添加Box Collider
右键点击想要添加Button的对象,通过Attach -> Box Collider来添加
然后为其添加Button Script,即可实现按钮效果

名称功能
Tween Target设按钮动画操纵的对象
isEnabled设按钮是否启用
6. Tween组件

右键对象Tween以添加动画组件

名称功能
From起始数值
to结束数值
play style播放方式
Animation Curve动画曲线
Duration动画时间
start delay动画延迟
Ignore TimeScale忽略时间缩放效果

如果禁用该方法,可以取消进入游戏时运行该动画,以便让代码来控制动画

方法描述
PlayForward()正向播放
PlayReverse()逆向播放
7. Slider组件

滑动条组件
想要使用Slider组件,必须先为那个对象添加Box Collider

名称功能
Value数值
step可以滑动出几种数值
Foreground前景图(滑块)
Background背景图(可以没有)
Direction方向
Thumb游标按钮

OnValueChange:UIProgressBar.current.value

Slider Colors插件
让滑动条根据当前数值占最大数值百分比的大小而改变自身颜色

8. UIWidget组件

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

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

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

Widgets也有Depth属性,控制他们被点击时的响应顺序。在Scene View中右键widget可以看到depth的排序。右键后会看见一个列表,所有在鼠标位置的widget都会列出来。最上面的就是显示在最前面的,也会最先接收事件。

8. PlaySound组件

用于播放声音

触发器描述
鼠标单击鼠标单击
On Mouse Over鼠标进入
On Mouse Out鼠标离开
On Press鼠标按下
On Release鼠标抬起
On Enable可用
On Disable禁用
9. Typewriter Effect组件

打字机特效组件

参数描述
Chars Per Second每秒显示字符数
Fade In Time淡入时间
Delay On New Line换行等待时间
8. PopupList组件

下拉列表组件
想要使用PopupList组件,必须先为那个对象添加Box Collider

名称功能
Options选项列表,每一行代表一个可选选项
Alignment选项列表文本对齐方式
Open on组件的打开复选框按钮
Keep->Initial设置初始值
Background组件的复选框背景图
HighIight复选框选项获取焦点的图
Animated复选框选是否使用动画
font复选框文本所用字体

必须要选择一种font,否则复选框不会被打开
OnValueChange:UIPopupList.current.value

9. Toggle组件

复选框组件
想要使用Toggle组件,必须先为那个对象添加Box Collider

组:

Group:开关组的设置。默认为0,表示没有开关组。当有多个Toggle的Group相等且不为0的时候,表示它们在同一个开关组中,同一个开关组中的开关只允许打开一个。
Starting State:初始状态是否被选中。

状态:

transition: 设置状态切换是否是平滑过渡
invertState:设置在未被选中情况下显示
OnValueChange:UIToggle.current.value

10. Input组件

输入框组件
想要使用Input组件,必须先为那个对象添加Box Collider

参数描述
starting Value默认文本
saved As内容指定保存的键值
active Text Color文本框激活的时候显示的颜色
inactive Color未激活的时候显示的颜色
caret Color闪硕光标的颜色
select Color被选择文字的颜色
input Type输入内容格式化,可以是密码显示*号
validation输入内容限定
on Return Key按下回车后的行为
character Limit输入字符数量限制

OnSubmit、OnChange:UIInput.current.value
输入内容限定的类型:

类型描述
Integer数字
username字母数字
名称字母
filename任意字符
11. UIDrag组件

拖拽组件
想要使用UIDrag组件,必须先为那个对象添加Box Collider

  1. UIDragObject
    用于某个UI对象的拖拽行为
参数描述
target拖拽的对象,一般是自身
movement拖拽位移是鼠标位移的几倍
scrollWheel获取鼠标焦点时,每次滚动滑轮的位移
dragEffect是否在拖拽结束后保留惯性
momentum惯性大小
  1. UIDragResize
    用于拉伸某个UI对象的大小
参数描述
目标拉伸的对象,一般是父对象
轴心允许拉伸UI的哪些方向
minWidth最小宽度
minHeight最小高度
maxWidth最大宽度
maxHeight最大高度
12. UIScrollBar组件

滚动条组件
想要使用UIScrollBar组件,必须先为那个对象添加Box Collider

名称功能
Value数值
size块大小
alpha透明度
step可以滑动出几种数值
Foreground前景图(滑块)
Background背景图(可以没有)
Direction方向
Thumb游标按钮

OnValueChange:UIScrollBar.current.value

13. UITextList组件

文本列表组件
想要使用UITextList组件,必须先为那个对象添加Box Collider
Box Collider

名称功能
textLabel文本区域
textBar滑动条
style从上新增还是从下新增
paragraph History历史数量限制

滚动视图组件
想要使用UIScrollView组件,必须先为那个对象添加Box Collider

  1. UIScrollView通常挂载在Panel面板上,为了内容水平自适应,子集还需额外安装一个UIGrid插件对象。
  2. 为视图中的每一个元素添加UIScrollView组件,设置它的滚动视图组件为这个UIScrollView组件。

如果想实现类似血条不可拖动的条,去掉Box Collider即可

UIScrollView

名称功能
Content Origin制panel相对Scroll View的位置
Movement控制Scroll View滑动的方向
Drag Effect拖动的效果(是否采用惯性)
Scroll Wheel Factor鼠标滑轮滚动速度
Momentum Amount滑动后,自动滑行的距离
Restrict Within Panel是否自动在边缘处视口拉回
Restrict Within Panel是否自动在边缘处视口拉回
Scroll Bars添加滑动条控件
13. UIDragDropItem组件

作为组件继承,检测物件的拖动状态,并使其可以拖动

方法功能参数
OnDragDropRelease(GameObject surface)鼠标抬起时候触发下方第一个有BoxCoLLider的对象
OnDragDropStart()开始拖动-
OnDragDropMove(Vector2 delta)拖动中当前鼠标位置和开始拖拽时鼠标位置相对物体的偏移差
  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

莉萝爱萝莉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值