插件:NGUI
一、版本
安装完毕后重启一下即可,否则可能创建的UI元素不生效

![]()

二、使用
Label文字
1、创建Canvs

2、只有根节点的这些脚本全部展开才能鼠标右键创建UI元素

3、选择字体

Label添加打字效果

Sprite图片
1、选择图集

2、选择图集中的精灵

InvisibleWidget容器
用来装UI的容器,“容器小组长”,一般用来把控件放到里面去,然后再把该容器放到面板中

Panel面板
用来装UI的容器,一般UI Root下装多个Panel来把不同功能的控件或“容器小组长”放到里面
1、创建

2、设置面板位置

Button按钮
1、创建Label控件,给控件加碰撞器

2、给Label控件加脚本,就拥有了点击功能,同理其它控件如精灵也可以这样操作,此类按键的命名可以在后缀加个button


控件被点击时会触发这个方法,自己挂脚本即可获取事件信息

3、创建一个带有背景的按钮





Button添加声音

Widget属性


Anchor锚点
用于设置控件的自适应


上下左右均会适应屏幕大小

小地图一直位于右上角

Tween动画
创建一个透明度的缓动动画


颜色、宽度、高度、位置

旋转、缩放、从一个ui位置到达另一个ui位置

Checkbox单选框

再创建一个Sprite用于显示状态改变的标志




保存为预制体

Slider滑动



把子物体赋值给父物体的前景色属性和背景属性,即可把前景图充当拖动条



让右边显示百分比



添加游标


PopupList下拉列表


创建Label用于显示选中选项的值



将候选项字体设置和已选中的字体一致

NGUI内置了一个可以直接拖来使用

创建图集Atlas
图集的作用是提高性能,使用Sprite时就可以在图集中选择对应的精灵图
将下面的图片制作成图集






使用图集的精灵

删除-图集中的图片


修改-图集中的图片

九宫切图SlicedSprite
切图解决的是边框被拉伸问题,切完后就不会被拉伸了
下面精灵的边框很模糊,点击编辑精灵进行切图处理使其边框不被拉伸

这样设置目的是除了中间那1个格子会被拉伸外,其余8个格子不会被拉伸,因此叫做九宫切图


动态字体制作与显示
静态字体就是将文字写道图片上,使得文字就以图片的显示展示,优点是速度快;
在系统中去拷贝一个可商用的TTF字体





使用动态字体


按钮预制体
方便后续使用,使用时只需要把名字改了即可


优雅的创建脚本



三、实战
案例一

创建Lable,添加两个动画组件,改名为仙剑奇侠传


创建Sprite,添加碰撞器进而添加按钮脚本

创建一个Label,用于展示该按钮作用

创建InvisibleWidget容器装title、startGameButton、Label;最后复制2份startGameButton,并改名为选项和退出



分别给三个按钮加声音,有自带的脚本和默认个音源,添加选择即可

创建Label,添加打字效果的脚本


开发设置面板并绑定脚本






将按钮做成预制体,方便后续使用,使用时只需要把名字改了即可


使用NGUI自带的滑块


上面4个控件都有change事件,因此可以绑定脚本的4个函数监听控件数值变化









界面切换动画
相关文章:
插件:NGUI
一、版本 安装完毕后重启一下即可,否则可能创建的UI元素不生效 二、使用 Label文字 1、创建Canvs 2、只有根节点的这些脚本全部展开才能鼠标右键创建UI元素 3、选择字体 Label添加打字效果 Sprite图片 1、选择图集 2、选择图集中的精灵 InvisibleWidget容器 用来…...
网络爬虫原理及其应用
你是否想知道Google 和 Bing 等搜索引擎如何收集搜索结果中显示的所有数据。这是因为搜索引擎对其档案中的所有页面建立索引,以便它们可以根据查询返回最相关的结果。网络爬虫使搜索引擎能够处理这个过程。 本文重点介绍了网络爬虫的重要方面、网络爬虫为何重要、其…...
串口中断原理及实现
一、串口的原理 SM0、SM1——串行口工作模式 SM0SM1模式特点00模式0移位寄存器方式,用于I/O口扩展01模式18位UART,波特率可变10模式29位UART,波特率为时钟频率/32或/6411模式39位UART,波特率可变 TI、RI——发送、接收中断标志位 TITI0 允许发送>TI1 发送完成后…...
课时136:变量进阶_变量实践_高级赋值
2 变量进阶 2.1 变量实践 2.1.1 高级赋值 学习目标 这一节,我们从 基础知识、简单实践、小结 三个方面来学习 基础知识 简介 所谓的高级赋值,是另外的一种变量值获取方法,这里涉及到更多我们学习之外的一些shell内置变量格式,其实这部分…...
牛客网刷题 | BC99 正方形图案
目前主要分为三个专栏,后续还会添加: 专栏如下: C语言刷题解析 C语言系列文章 我的成长经历 感谢阅读! 初来乍到,如有错误请指出,感谢! 描述 KiKi学习了循环&am…...
启动小程序F12窗口管理器
如何使用小程序F12任务窗口管理器教学流程 一、引言 小程序的开发者们,是否希望有一款工具能帮助你们更好地管理任务窗口? 二、前置准备 观看视频教程 访问B站视频链接:https://www.bilibili.com/video/BV1aa4y197UU/?spm_id_from333.9…...
完全背包之零钱兑换I
上次分享完完全背包问题的解决思路后,这次分享一道和完全背包有关的leetcode题。 零钱兑换 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。计算并返回可以凑成总金额所需的最少的硬币个数。如果…...
Flutter 中的 FittedBox 小部件:全面指南
Flutter 中的 FittedBox 小部件:全面指南 在Flutter的丰富布局小部件中,FittedBox扮演着一个独特而重要的角色。它是一个灵活的组件,用于将子组件的大小和位置适应到给定的约束条件中。本文将提供FittedBox的全面指南,帮助你了解…...
Java的线程的使用
一.两种创建线程的方式 1.继承Thread类(匿名内部类) 创建方式: 1.定义一个子类继承Thread,重写run方法 2.创建子类对象, 3.调用子类对象的start方法(启动还是执行的run方法) 优缺点&#x…...
行为型模式 (Python版)
模板方法模式 """案例:写简历内容:最近有个招聘会,可以带上简历去应聘了。但是,其中有一家公司不接受简历,而是给应聘者发了两张公司自己定制的简历表,分别是A类型的简历表和B类型的简历表…...
vscode:如何解决”检测到include错误,请更新includePath“
vscode:如何解决”检测到include错误,请更新includePath“ 前言解决办法1 获取includePath路径2 将includePath路径添加到指定文件3 保存 前言 配置vscode是出现如下错误: 解决办法 1 获取includePath路径 通过cmd打开终端,输入如下指令&a…...
区块链会议投稿资讯CCF A--USENIX Security 2025 截止9.4、1.22 附录用率
会议名称:34th USENIX Security Symposium CCF等级:CCF A类学术会议 类别:网络与信息安全 录用率:2023年接收率29%,2024录用的区块链相关文章请查看 Symposium Topics System security Operating systems security …...
vue实现可拖拽移动悬浮球
封装悬浮球组件,文件名s-icons.vue <template><div ref"icons" class"icons-container" :style"{ left: left px, top: top px }"><slot></slot></div> </template> <script> export …...
立体库堆垛机的精密构造与功能(收藏版)
导语 大家好,我是社长,老K。专注分享智能制造和智能仓储物流等内容。 新书《智能物流系统构成与技术实践》 在现代物流仓储体系中,堆垛机以其高效、精准的操作能力,成为了自动化存储与检索系统的关键所在。 其复杂的构造和多样化的…...
算法提高之你能回答这些问题吗
算法提高之你能回答这些问题吗 核心思想:线段树 用sum,lmax,rmax,tmax分别存线段长度,最大前缀,最大后缀,最大子段和 #include <iostream>#include <cstring>#include <algorithm>using namespace std;const int N 500010;int n,m;int w[N];s…...
C++-指针
在C中,指针是至关重要的组成部分。它是C语言最强大的功能之一,也是最棘手的功能之一。 指针具有强大的能力,其本质是协助程序员完成内存的直接操纵。 指针:特定类型数据在内存中的存储地址,即内存地址。 指针变量的定…...
Three.js 研究:2、如何让动画线性运动
1、默认的动画含有加速度并非线性的 制作好的动画很明显是非线性的,这是一个运动环,为了让环运行线性进行如下设置。 2、设置动画成为线性动画...
z3-加法器实验
补码器加减法,运算方法简介 我们要知道什么是补码的加法,我们为什么要用补码的加法? 补码的加法其实就是将两个补码形式的二进制数字直接相加,处理的时候忽略超出固定位数的进位。补码的加法运算和无符号二进制数的加法操作一样&…...
解决git克隆项目出现fatal无法访问git clone https://github.com/lvgl/lvgl.git
Windows 11系统 报错 $ git clone https://github.com/lvgl/lvgl.git Cloning into lvgl... fatal: unable to access https://github.com/lvgl/lvgl.git/: Failed to connect to github.com port 443 after 21141 ms: Couldnt connect to server 解决方法 git运行这两段代码…...
Vue中引入组件需要哪三步
在Vue中引入组件通常需要以下三步: 导入组件:首先,你需要在父组件中导入你想要使用的子组件。这通常是通过ES6的import语法完成的。 注册组件:接下来,你需要在父组件中注册这个子组件。这可以通过components选项完成&…...
铭豹扩展坞 USB转网口 突然无法识别解决方法
当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...
【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表
1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...
视频字幕质量评估的大规模细粒度基准
大家读完觉得有帮助记得关注和点赞!!! 摘要 视频字幕在文本到视频生成任务中起着至关重要的作用,因为它们的质量直接影响所生成视频的语义连贯性和视觉保真度。尽管大型视觉-语言模型(VLMs)在字幕生成方面…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...
如何理解 IP 数据报中的 TTL?
目录 前言理解 前言 面试灵魂一问:说说对 IP 数据报中 TTL 的理解?我们都知道,IP 数据报由首部和数据两部分组成,首部又分为两部分:固定部分和可变部分,共占 20 字节,而即将讨论的 TTL 就位于首…...
九天毕昇深度学习平台 | 如何安装库?
pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple --user 举个例子: 报错 ModuleNotFoundError: No module named torch 那么我需要安装 torch pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple --user pip install 库名&#x…...
Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信
文章目录 Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket(服务端和客户端都要)2. 绑定本地地址和端口&#x…...
SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题
分区配置 (ptab.json) img 属性介绍: img 属性指定分区存放的 image 名称,指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件,则以 proj_name:binary_name 格式指定文件名, proj_name 为工程 名&…...
在QWebEngineView上实现鼠标、触摸等事件捕获的解决方案
这个问题我看其他博主也写了,要么要会员、要么写的乱七八糟。这里我整理一下,把问题说清楚并且给出代码,拿去用就行,照着葫芦画瓢。 问题 在继承QWebEngineView后,重写mousePressEvent或event函数无法捕获鼠标按下事…...
Go 语言并发编程基础:无缓冲与有缓冲通道
在上一章节中,我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道,它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好࿰…...
