unity学习56:旧版legacy和新版TMP文本输入框 InputField学习
目录
1 旧版文本输入框 legacy InputField
1.1 新建一个文本输入框
1.2 InputField 的子物体构成
1.3 input field的的component
1.4 input Field的属性
2 过渡 transition
4 占位文本 placeholder
5 文本 text
5.1 文本内容,用户来input
5.2 内容类型 content type
5.3 line type
5.4 光标 caret相关
5.5 其他
6 相关触发事件
7 代码
7.1 UI相关代码必须先引用 UnityEngine.UI
7.2 声明 InputField类型的变量,然后在unity里拖动和获取到这个控件
7.3 然后再 inputField下面的创建新事件,并关联到脚本的对应函数
7.4 测试代码
8 新版TMP InputField
8.1 子物体的构成,结构有变换,功能差不多
8.2 属性有一些不同,大部分相同
8.3 事件不一样
9 新版 TMP InputField 代码差别
9.1 改变,新包 TMPro
9.2 改变,新类型TMP_InputField
9.3 其他绑定方式类似
9.4 代码实测
1 旧版文本输入框 legacy InputField
1.1 新建一个文本输入框

1.2 InputField 的子物体构成

主物体/主控件 InputField 下面包含2个文本
- 一个是place holder //占位文本
- 一个是text //就是用户输入时的显示文本
1.3 input field的的component
- rect transform
- canvas render
- image
- input Field
1.4 input Field的属性

- actable 可交互性
- 如果不可交互,就无法选中了,类纯看的图片
2 过渡 transition
- 过渡 transition
- 类前面的button

3 控件导航 navigation
- 多个控件之间的导航,类前面的button
- 没仔细看,以后再说

4 占位文本 placeholder
- 点击 placeholder 会跳转到子物体placeholder
- 然后在placeholder 上面修改文本内容


5 文本 text
5.1 文本内容,用户来input
- 就是用户的文本输入的内容
- 注意是用户来input
- 一般这里不应该填写内容,如果填写了就会覆盖 place holder
- 而且需要用户自己删掉,可能是提示必须填的文本格式?

- 虽然不填内容,等用户来填写
- 但是各种对文本的 控制,都可以提前设置
- 比如
- character limit 字符数限制

5.2 内容类型 content type
- 整数int
- 小数
- 密码, 会自动屏蔽为***
- 字母
- 电邮
- 等等


5.3 line type



5.4 光标 caret相关


5.5 其他
移动时输入会弹出一个键盘?

6 相关触发事件
- on value changed
- on submit
- on end edit

7 代码
7.1 UI相关代码必须先引用 UnityEngine.UI
- 开头需要添加
- using UnityEngine.UI
7.2 声明 InputField类型的变量,然后在unity里拖动和获取到这个控件
- 脚本中,先声明 public InputField inputField1;
- 因为这个脚本挂载canvas上面
- 然后拖动关联到canvas下面的脚本的公共变量上
- 注意,需要让unity可读到显示,都必须声明为public

7.3 然后再 inputField下面的创建新事件,并关联到脚本的对应函数
- 然后再 inputField下面的创建新事件 on value changed
- 把脚本所在的canvas挂上去
- 从右边找到 脚本,然后找到脚本里的新建的函数 inputTextChanged

7.4 测试代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;public class TestUI : MonoBehaviour
{public InputField inputField1;// Start is called before the first frame updatevoid Start(){using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;public class TestUI : MonoBehaviour
{public InputField inputField1;// Start is called before the first frame updatevoid Start(){}// Update is called once per framevoid Update(){}// Update is called once per framepublic void buttonClick(){Debug.Log("buttonClick");}public void InputTextChanged(){Debug.Log("InputTextChanged");Debug.Log(inputField1.text);}}}// Update is called once per framevoid Update(){}// Update is called once per framepublic void buttonClick(){Debug.Log("buttonClick");}public void InputTextChanged(){Debug.Log("InputTextChanged");Debug.Log(inputField1.text);}}

8 新版TMP InputField
8.1 子物体的构成,结构有变换,功能差不多

8.2 属性有一些不同,大部分相同


8.3 事件不一样
- on value changed
- on end edit
- on select
- on deselect

9 新版 TMP InputField 代码差别
9.1 改变,新包 TMPro
- using TMPro;
- 因为TMP使用的包不一样
9.2 改变,新类型TMP_InputField
- public TMP_InputField inputField2;
- 文本框的类型,完全不同
9.3 其他绑定方式类似


9.4 代码实测

相关文章:
unity学习56:旧版legacy和新版TMP文本输入框 InputField学习
目录 1 旧版文本输入框 legacy InputField 1.1 新建一个文本输入框 1.2 InputField 的子物体构成 1.3 input field的的component 1.4 input Field的属性 2 过渡 transition 3 控件导航 navigation 4 占位文本 placeholder 5 文本 text 5.1 文本内容,用户…...
32位,算Cache地址
32位,算Cache地址...
C++蓝桥杯基础篇(六)
片头 嗨~小伙伴们,大家好!今天我们来一起学习蓝桥杯基础篇(六),练习相关的数组习题,准备好了吗?咱们开始咯! 第1题 数组的左方区域 这道题,实质上是找规律,…...
React 常见面试题及答案
记录面试过程 常见问题,如有错误,欢迎批评指正 1. 什么是虚拟DOM?为什么它提高了性能? 虚拟DOM是React创建的一个轻量级JavaScript对象,表示真实DOM的结构。当状态变化时,React会生成新的虚拟DOM…...
和鲸科技推出人工智能通识课程解决方案,助力AI人才培养
2025年2月,教育部副部长吴岩应港澳特区政府邀请,率团赴港澳宣讲《教育强国建设规划纲要 (2024—2035 年)》。在港澳期间,吴岩阐释了教育强国目标的任务,并与特区政府官员交流推进人工智能人才培养的办法。这一系列行动体现出人工智…...
免费使用 DeepSeek API 教程及资源汇总
免费使用 DeepSeek API 教程及资源汇总 一、DeepSeek API 资源汇总1.1 火山引擎1.2 百度千帆1.3 阿里百炼1.4 腾讯云 二、其他平台2.1 华为云2.2 硅基流动 三、总结 DeepSeek-R1 作为 2025 年初发布的推理大模型,凭借其卓越的逻辑推理能力和成本优势,迅速…...
网络安全-使用DeepSeek来获取sqlmap的攻击payload
文章目录 概述DeepSeek使用创建示例数据库创建API测试sqlmap部分日志参考 概述 今天来使用DeepSeek做安全测试,看看在有思路的情况下实现的快不快。 DeepSeek使用 我有一个思路,想要测试sqlmap工具如何dump数据库的: 连接mysql数据库&#…...
网络原理--TCP/IP(2)
我们在之前已经介绍到TCP协议的核心机制二,接下来我们将继续介绍其他的核心机制。 核心机制三:连接管理 即建立连接,断开连接,在正常情况下,TCP要经过三次握⼿建⽴连接,四次挥⼿断开连接。 建立连接:TCP是通过“三次握手” 在生活中的握手就是打招呼,,但握手操作没有…...
Ragflow与Dify之我见:AI应用开发领域的开源框架对比分析
本文详细介绍了两个在AI应用开发领域备受关注的开源框架:Ragflow和Dify。Ragflow专注于构建基于检索增强生成(RAG)的工作流,强调模块化和轻量化,适合处理复杂文档格式和需要高精度检索的场景。Dify则旨在降低大型语言模…...
文件上传漏洞绕过WAF
文件上传漏洞绕过WAF学习笔记 1. WAF检测原理 WAF(Web应用防火墙)通过以下方式拦截文件上传攻击: 关键字匹配:检测文件名、内容中的敏感词(如<?php、eval)。 扩展名黑名单:拦截.php、.jsp…...
[含文档+PPT+源码等]精品基于Python实现的vue3+Django计算机课程资源平台
基于Python实现的Vue3Django计算机课程资源平台的背景,可以从以下几个方面进行阐述: 一、教育行业发展背景 1. 教育资源数字化趋势 随着信息技术的快速发展,教育资源的数字化已成为不可逆转的趋势。计算机课程资源作为教育领域的重要组成部…...
Qt 开源音视频框架模块之QtAV播放器实践
Qt 开源音视频框架模块QtAV播放器实践 1 摘要 QtAV是一个基于Qt的多媒体框架,旨在简化音视频播放和处理。它是一个跨平台的库,支持多种音视频格式,并提供了一个简单易用的API来集成音视频功能。QtAV的设计目标是为Qt应用程序提供强大的音视…...
【前端】XML,XPATH,与HTML的关系
XML与HTML关系 XML(可扩展标记语言)和 HTML(超文本标记语言)是两种常见的标记语言,但它们有不同的目的和用途。它们都使用类似的标记结构(标签),但在设计上存在一些关键的差异。 XML…...
ubuntu服务器安装VASP.6.4.3
ubuntu服务器安装VASP.6.4.3 1 安装Intel OneAPI Base Toolkit和Intel OneAPI HPC Toolkit1.1 更新并安装环境变量1.2 下载Intel OneAPI Base Toolkit和Intel OneAPI HPC Toolkit安装包1.3 安装 Intel OneAPI Base Toolkit1.4 安装 Intel OneAPI HPC Toolkit1.5 添加并激活环境…...
市场加速下跌,但监管「坚冰」正在消融
作者:Techub 热点速递 撰文:Yangz,Techub News 与近日气温逐步回暖不同,自 2 月 25 日比特币跌破 9 万美元以来,加密货币市场行情一路下滑。今日 10 时 50 分左右,比特币更是跌破 8 万美元大关,…...
7.2 - 定时器之计算脉冲宽度实验
文章目录 1 实验任务2 系统框图3 软件设计 1 实验任务 本实验任务是通过CPU私有定时器来计算按键按下的时间长短。 2 系统框图 参见7.1。 3 软件设计 注意事项: 定时器是递减计数的,需要考虑StartCount<EndCount的情况。 /***********…...
Imagination DXTP GPU IP:加速游戏AI应用,全天候畅玩无阻
日前,Imagination 推出了最新产品——Imagination DXTP GPU IP,在智能手机和其他功耗受限设备上加速图形和AI工作负载时,保证全天候的电池续航。它是我们最新D系列GPU的最终产品,集成了自2022年发布以来引入的一系列功能ÿ…...
关于流水线的理解
还是不太理解,我之前一直以为,对axis总线,每一级的寄存器就像fifo一样,一级一级的分级存储最后一级需要的数据。(现在看来,我这个理解应该也是没有问题的) 如下图,一开始是在解析axi…...
采样算法二:去噪扩散隐式模型(DDIM)采样算法详解教程
参考 https://arxiv.org/pdf/2010.02502 一、背景与动机 去噪扩散隐式模型(DDIM) 是对DDPM的改进,旨在加速采样过程同时保持生成质量。DDPM虽然生成效果优异,但其采样需迭代数百至数千次,效率较低。DDIM通过以下关键…...
北京大学DeepSeek提示词工程与落地场景(PDF无套路免费下载)
近年来,大模型技术飞速发展,但许多用户发现:即使使用同一款 AI 工具,效果也可能天差地别——有人能用 AI 快速生成精准方案,有人却只能得到笼统回答。这背后的关键差异,在于提示词工程的应用能力。 北京大…...
接口测试中缓存处理策略
在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...
椭圆曲线密码学(ECC)
一、ECC算法概述 椭圆曲线密码学(Elliptic Curve Cryptography)是基于椭圆曲线数学理论的公钥密码系统,由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA,ECC在相同安全强度下密钥更短(256位ECC ≈ 3072位RSA…...
多模态大语言模型arxiv论文略读(108)
CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题:CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者:Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...
【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分
一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计,提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合:各模块职责清晰,便于独立开发…...
免费数学几何作图web平台
光锐软件免费数学工具,maths,数学制图,数学作图,几何作图,几何,AR开发,AR教育,增强现实,软件公司,XR,MR,VR,虚拟仿真,虚拟现实,混合现实,教育科技产品,职业模拟培训,高保真VR场景,结构互动课件,元宇宙http://xaglare.c…...
「全栈技术解析」推客小程序系统开发:从架构设计到裂变增长的完整解决方案
在移动互联网营销竞争白热化的当下,推客小程序系统凭借其裂变传播、精准营销等特性,成为企业抢占市场的利器。本文将深度解析推客小程序系统开发的核心技术与实现路径,助力开发者打造具有市场竞争力的营销工具。 一、系统核心功能架构&…...
在RK3588上搭建ROS1环境:创建节点与数据可视化实战指南
在RK3588上搭建ROS1环境:创建节点与数据可视化实战指南 背景介绍完整操作步骤1. 创建Docker容器环境2. 验证GUI显示功能3. 安装ROS Noetic4. 配置环境变量5. 创建ROS节点(小球运动模拟)6. 配置RVIZ默认视图7. 创建启动脚本8. 运行可视化系统效果展示与交互技术解析ROS节点通…...
flow_controllers
关键点: 流控制器类型: 同步(Sync):发布操作会阻塞,直到数据被确认发送。异步(Async):发布操作非阻塞,数据发送由后台线程处理。纯同步(PureSync…...
对象回调初步研究
_OBJECT_TYPE结构分析 在介绍什么是对象回调前,首先要熟悉下结构 以我们上篇线程回调介绍过的导出的PsProcessType 结构为例,用_OBJECT_TYPE这个结构来解析它,0x80处就是今天要介绍的回调链表,但是先不着急,先把目光…...
Python第七周作业
Python第七周作业 文章目录 Python第七周作业 1.使用open以只读模式打开文件data.txt,并逐行打印内容 2.使用pathlib模块获取当前脚本的绝对路径,并创建logs目录(若不存在) 3.递归遍历目录data,输出所有.csv文件的路径…...
