UG3L11——UI事件监听接口
UG3L11——UI事件监听接口 UI事件监听接口 目前所有的控件都只提供了常用的事件监听列表 如果想做一些类似长按,双击,拖拽等功能是无法制作的 或者想让 Image 和 Text,RawImage三大基础控件能够响应玩家输入也是无法制作的 而事件接口就是用来处理类似问题 让所有控件都能够添加更多的事件监听来处理对应的逻辑 好处: 需要监听自定义事件的控件挂载继承实现了接口的脚本就可以监听到一些特殊事件 可以通过它实现一些长按,双击拖拽等功能 坏处: 不方便管理,需要自己写脚本继承接口挂载到对应控件上,比较麻烦 事件接口种类 使用所有相关接口都需要引用命名空间 UnityEngine.EventSystems 注意,以下的大部分事件接口需要打开 Raycast Target 才能使用,请注意是否打开! 常用接口 鼠标指针(或者触屏点击)和操作相关 需要继承的接口 监听函数名 作用 IPointerEnterHandler OnPointerEnter 当指针进入对象时调用...
UG3L10——图集制作
UG3L10——图集制作 Unity核心里对该部分已经有所讲解 ——> Sprite Atlas 为什么要打图集 UGUI和NGUI使用上最大的不同是 NGUI使用前就要打图集 UGUI可以再之后再打图集 打图集的目的就是减少DrawCall 提高性能 具体DrawCall是什么在NGUI课程中已经详细讲解 简单回顾DrawCall DrawCall就是CPU通知GPU进行一次渲染的命令 如果DrawCall次数较多会导致游戏卡顿 我们可以通过打图集,将小图合并成大图,将本应n次的DrawCall变成1次DrawCall来提高性能 在Unity中打开自带的打图集功能 Unity核心里已经有所讲解 ——> Sprite Atlas 在工程设置面板中打开功能 Edit——>Project Setting——>Editor Sprite Packer(精灵包装器,可以通过Unity自带图集工具生成图集) Disabled:默认设置,不会打包图集 Enabled For Builds(Legacy Sprite...
UG3L9——Dropdown 下拉列表
UG3L9——Dropdown 下拉列表 Dropdown DropDown是下拉列表(下拉选单)组件 是UGUI中用于处理下拉列表相关交互的关键组件 默认创建的DropDown由4组对象组成 父对象 DropDown组件依附的对象 还有一个Image组件 作为背景图 子对象 Label是当前选项描述 Arrow右侧小箭头 Template下拉列表选单 本章代码关键字 123456Dropdown //下拉列表类dropdown.value //下拉列表的索引值Dropdown.OptionData //下拉列表内部的选项类dropdown.options[dropdown.value] //下拉列表的选项列表,通过索引值获取单个选项dropdown.options.Add() ...
UG3L8——ScrollView 滚动视图
UG3L8——ScrollView 滚动视图 ScrollRect ScrollRect是滚动视图组件 是UGUI中用于处理滚动视图相关交互的关键组件 默认创建的ScrollRect由4组对象组成 父对象——ScrollRect组件依附的对象 还有一个Image组件 最为背景图 子对象 Viewport控制滚动视图可视范围和内容显示 Scrollbar Horizontal 水平滚动条 Scrollbar Vertical 垂直滚动条 本章代码关键字 1234ScrollRect //滚动视图类scrollRect.content.sizeDelta //设置改变内容的大小 具体可以拖动多少 都是根据它的尺寸来的scrollRect.normalizedPosition //ScrollView的归一化位置,即滚动视图在content的哪个位置scrollRect.onValueChanged.AddListener() ...
UG3L7——ScrollBar 滚动条
UG3L7——ScrollBar 滚动条 ScrollBar Scrollbar是滚动条组件 是UGUI中用于处理滚动条相关交互的关键组件 默认创建的Scrollbar由2组对象组成 父对象——Scrollbar组件依附的对象 子对象——滚动块对象 一般情况下我们不会单独使用滚动条 都是配合ScrollView滚动视图来使用 本章代码关键字 12Scrollbar //滚动条类scrollbar.onValueChanged.AddListener() //添加当滚动条值改变时执行的函数 ScrollBar 参数相关 Interactable:是否接受输入 Transition:响应用户输入的过渡效果 Navigation:导航模式,可以设置UI元素如何在播放模式中控制器导航 FillRect:用于填充的进度条图形 Handle Rect:用于滑动的滑动块图形 Direction:滑动条值增加的方向 Left To Right:从左到右 Right To...
UG3L6——Slider 滑动条
UG3L6——Slider 滑动条 Slider Slider是滑动条组件 是UGUI中用于处理滑动条相关交互的关键组件 默认创建的Slider由4组对象组成 父对象——Slider组件依附的对象 子对象——背景图、进度图、滑动块三组对象 本章代码关键字 123Slider //滑动条类slider.onValueChanged.AddListener() //传入当滑动条值改变时执行的函数slider.interactable //是否接受输入 Slider 参数相关 Interactable:是否接受输入 Transition:响应用户输入的过渡效果 Navigation:导航模式,可以设置UI元素如何在播放模式中控制器导航 FillRect:用于填充的进度条图形 Handle Rect:用于滑动的滑动块图形 Direction:滑动条值增加的方向 Left To Right:从左到右 Right To Left:从右到左 Bottom...
UG3L5——InputField 文本输入
UG3L5——InputField 文本输入 InputField InputField是输入字段组件 是UGUI中用于处理玩家文本输入相关交互的关键组件 默认创建的InputField由3个对象组成 父对象——InputField组件依附对象 以及 同时在其上挂载了一个Image作为背景图 子对象——文本显示组件(必备)、默认显示文本组件(必备) 本章代码关键字 1234Inputfield //文本输入控件类inputfield.onValueChanged.AddListener() //传入当文字改变时执行的函数inputfield.onSubmit.AddListener() //传入当确认输入时执行的函数inputfield.onEndEdit.AddListener() //传入当退出输入时执行的函数 InputField...
UG3L4——Toggle 单选框
UG3L4——Toggle 单选框 Toggle Toggle 是开关组件,是UGUI中用于处理玩家单选框多选框相关交互的关键组件 开关组件 默认是多选框,可以通过配合 ToggleGroup 组件制作为单选框 默认创建的Toggle由4个对象组成 父对象 —— Toggle组件依附 子对象 —— 背景图(必备)、选中图(必备)、说明文字(可选) 本章代码关键字 12345Toggle //单选框类ToggleGroup //单选框组合类toggle.isOn //是否处于激活状态toggleGroup.ActiveToggles() //该方法是迭代器,通过foreach循环可以得到该toggleGroup下哪个toggle是激活的toggle.onValueChanged.AddListener() ...
UG3L3——Button 按钮
UG3L3——Button 按钮 Button Button 是按钮组件 是UGUI中用于处理玩家按钮相关交互的关键组件 默认创建的 Button 由2个对象组成 父对象 —— Button 组件依附于父对象 同时挂载了一个 Image 组件 作为按钮背景图 子对象 —— 按钮文本(可选) 本章代码关键字 1234Button //按钮类button.onClick.AddListener() //向按钮添加监听函数button.onClick.RemoveListener() //移除按钮的指定监听函数button.onClick.RemoveAllListeners() //移除按钮的全部监听函数 Button 参数相关 Interactable:是否接受输入 Transition:响应用户输入的过渡效果 None:没有状态变化效果 ColorTint:用颜色表示不同状态的变化 TargetGraphic:控制的目标图形 Normal...
UG3L2-3——RawImage 原始图像
UG3L2-3——RawImage 原始图像 RawImage RawImage是原始图像组件,是UGUI中用于显示任何纹理图片的关键组件,它可以显示包括但不限于Sprite类型的贴图 它和Image的区别是,一般RawImage用于显示大图(背景图,不需要打入图集的图片,网络下载的图等等) 本章代码关键字 123RawImage //RawImage的类rawImage.texture //修改RawImage显示的图片rawImage.uvRect //修改rawImage的UI矩形的偏移和大小 RawImage 参数相关 RawImage的Texture显示图片的格式并不要求是Sprite类型的 Texture:图像纹理 UV Rect:图像在UI矩形内的偏移和大小 位置偏移X和Y(取值0~1) 大小偏移W和H(取值0~1) 改变他们图像边缘将进行拉伸来填充UV矩形周围的空间 代码控制RawIamge 代码更新大图 12RawImage rawImage =...