当前位置: 首页 > news >正文

Unity动态添加聊天文本

1.创建一个滚动视图

2.调整滚动视图的位置并删掉这个

3.创建一个输入框和一个按钮

 

这里插一句一定要给content添加这个组件并设置单元格大小

 

4创建一个脚本并编写下面代码

 

using System.Collections;
using System.Collections.Generic;
using TMPro;
using Unity.VisualScripting;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.UIElements;
using static System.Net.Mime.MediaTypeNames;public class Tallk : MonoBehaviour
{public ScrollRect myScrollView; // 声明一个公共的ScrollRect变量public TextMeshProUGUI text;//文本预制体public int headup = 300;//视图初始高度可以改public TMP_InputField shuru;//获取输入框public void OnClick(){text.text = "me:" + shuru.text;//生成文本预制体Instantiate(text, myScrollView.content.transform);// 获取Content的RectTransform组件RectTransform contentRectTransform = myScrollView.content.GetComponent<RectTransform>();// 更新Content的高度每次加35contentRectTransform.sizeDelta = new Vector2(contentRectTransform.sizeDelta.x, headup += 35);}
}

4.将这个脚本加到一个空对象上

 

5.创建一个文本预制体(新版),将文本直接拖到工程文件夹里面就创好了,创好后可以删除原本的文本。

 

6.绑定游戏对象(滚动视图,文本预制体,输入框)

 

7.给发送按钮绑定事件(第一步点击按钮的加号添加事件,然后将刚刚加脚本的空对象拖进来,然后找到点击方法方法)

 

 

8.运行游戏输入一些测试文本就能实现下面的效果了 (文本框是动态添加的,其他设置可以自己改)

http://www.lryc.cn/news/373551.html

相关文章:

  • 力扣-2269. 找到一个数字的 K 美丽值
  • 一个在C#中集成Python的例子
  • 基于RandLA-Net深度学习模型的激光点云语义分割
  • C语言的结构体与联合体
  • React Hooks小记(三)_forwardRef
  • 面试复习记录
  • 块级元素与行内元素详解
  • Kotlin编程实践-【Java如何调用Kotlin中带默认值参数的函数】
  • 中国城市统计年鉴(1985-2023年)
  • RestTemplate远程请求的艺术
  • Spring 整合 MyBatis 底层源码解析
  • LeetCode 189.轮转数组
  • JDK17 你的下一个白月光
  • springboot优雅shutdown时如何保障异步线程的安全
  • C++格式化库fmt使用方法
  • HTML 颜色名:网页设计的调色板
  • 12306 火车票价格解析 (PHP 解析)
  • 了解统计学中不同类型的分布
  • k8s-CCE创建工作负载变量引用
  • 后端主流框架--Spring02
  • [数据集][目标检测]减速带检测数据集VOC+YOLO格式5400张1类别
  • 分析Linux操作指令及使用场景与频率分析 持续更新
  • Redis 字符串(String)
  • 第一篇:容器化的未来:从Docker的革命到云原生架构
  • 【2024最新华为OD-C/D卷试题汇总】[支持在线评测] URL拼接(100分) - 三语言AC题解(Python/Java/Cpp)
  • 反射,枚举以及lambda表达式
  • DNS域名解析----分离解析、多域名解析、父域与子域
  • Spring底层架构核心概念解析
  • C++ 44 之 指针运算符的重载
  • onlyoffice在线预览加载优化