一.UGUI
1.Text
Rich Text :富文本语法是否使用
<color=red>New</color>
2.Button
OnClik() 只能调用无参数或者一个参数的方法,方法的参数在两个或者两个以上,则不能使用。
3.Toggle
is On
4.Slider
5.Scrollbar 滑块
6.Dropdown 下拉框
7.InputFiled 输入框
OnValueChange(string) 每一次输出,后台就会更新一次
OnEndEdit(string) 输入后,按回车,才会更新一次
组件
Grid Layout Group 网格布局组件
优化原理 Batches (DrawCalls优化)
在界面默认一张图片一个Draw Calls
同一张图片多次显示仍然为一个Draw Calls
精灵打包
(1)选中需要打包的精灵图片,设置PackingTag
(2)选择Edit——ProjectSettings——Editor——SpritePacker——AlwaysEnabled
(3)Windows——SpritePacker——Pack
精灵切割
(1)SpriteMode——Multiple
(2)SpriteEdit——Slice——Type——Auto自动切割、size设置固定像素切割
事件注册
(1)编辑器绑定方法
(2)AddListener
this.transform.....
(3)接口
public interface IC
{
void Test();
}
public class A : IC
{
public void Test()
{
print("这是一个接口的简单形式");
}
}
接口中所有的方法默认都是public,同时public也无法写进接口中来进行修饰
接口中的方法无法在接口中实现,只能通过类的继承,来实现其中的方法,并且方法名要和接口中的方法名保持一致
接口的命名:一般以大写的I开头进行命名
接口是一种规范,可以继承多个接口,一旦继承,必须实现接口内部的方法
当一个类既 继承了 接口,又继承了类,那么类要写在前面,接口要写在后面
UGUI 点击接口
引入命名空间using UnityEngine.EventSystems;
UGUI 拖拽接口
public void OnDrag(PointerEventData eventData)
{
//覆盖模式 屏幕坐标就等同于世界坐标
//transform.position = eventData.position;
//通用模式 将屏幕坐标转化为世界坐标
//参数 画布的rectTransform 当前事件相机的二维坐标 当前的事件相机 out 返回的世界坐标
RectTransform rectTrans = transform.parent as RectTransform;
RectTransformUtility.ScreenPointToWorldPointInRectangle(rectTrans, eventData.position, eventData.enterEventCamera, out TransPOS);
transform.position = TransPOS;
}
二.动画系统
1.Animation 插值动画
WarpMode Loop 循环 PingPang 来回
Curves
添加事件
2.Animator
Animator可以添加多个Animation动画