【Cocos新手进阶】通过cocos实现可控制的动态加载更新的日志界面效果

本篇文章主要讲解,通过cocos实现可控制的动态加载更新的日志界面效果。
日期:2023年11月15日
作者:任聪聪

效果演示:

效果说明:在一个界面可以动态输出for循环的结果并更新到界面中进行不断加载的日志页面效果,可用做loading加载和相关动态操作的显示情景中。
在这里插入图片描述

实现步骤:

步骤一、打开我们的cocos creator 如下图:

在这里插入图片描述

步骤二、配置我们的相关界面组件,如下图所示层级及名称关系:

在这里插入图片描述
注意:背景和相关的实例配置信息在文章所关联的附件中,如果是新手不知道如何配置界面,可以直接拿实例导入运行。

步骤三、创建home.ts脚本及相关预制体信息,如下:

在这里插入图片描述

步骤四、填充home.ts脚本,并关联home场景

home.ts脚本

const {ccclass, property} = cc._decorator;
import item from "./item";
@ccclass
export default class NewClass extends cc.Component {

    @property(cc.Node)
    scrollViewObj: cc.Node = null;   

    @property(cc.Node)
    itemPrefabFather: cc.Node = null;   

    @property(cc.Prefab)
    itemPrefab: cc.Prefab = null;

    @property(cc.Button)
    button: cc.Button = null;

    @property(cc.Label)
    text: cc.Label = null;

    @property(cc.Label)
    button_text: cc.Label = null;

    private logsData:any = [];
    private idx:number = 0;
    private startLogs:boolean  = false;
    // LIFE-CYCLE CALLBACKS:

    onLoad () {
        let that = this;
        that.logsData = [];
        for(var i = 0;i<1000;i++){
            let newLogsData = {'string':'正在执行日志信息id'+i+"的进度加载~"}
            that.logsData.push(newLogsData);
        }
    }

    startBtn(){
        let that = this;
        that.startLogs = that.startLogs?false:true;
        that.text.string = that.startLogs?"正在加载中....":"已停止";
        that.button_text.string = that.startLogs?"停止":"继续";
    }

    start () {
        let that = this;
        cc.log('加载日志数据:',that.logsData)
    }

    update (dt) {
        let that = this;
        console.log(dt);
        if(that.idx<1000&&that.startLogs){
            that.idx++;
            let logItem = that.logsData[that.idx]
            let prefabItem = cc.instantiate(that.itemPrefab);
            prefabItem.parent = that.itemPrefabFather;
            prefabItem.getComponent(item).initThisPrefab(logItem);
            // 获取ScrollView组件
            const scrollView = that.scrollViewObj.getComponent(cc.ScrollView);
            // 将ScrollView的垂直滚动位置设置为底部
            scrollView.scrollToBottom(0);
        }
    }

}

点击添加用户组件关联脚本信息

说明:并将所有的组件信息进行关联。
在这里插入图片描述

步骤五、填充预制体 item.ts脚本及关联脚本信息

item.ts

const {ccclass, property} = cc._decorator;

@ccclass
export default class NewClass extends cc.Component {

    @property(cc.Label)
    label: cc.Label = null;

    // LIFE-CYCLE CALLBACKS:

    // onLoad () {}

    initThisPrefab (data:any) {
        let that = this;
        that.label.string = data.string;
    }

    // update (dt) {}
}

关联预制体

说明:创建预制体则是将场景中的普通节点拖拽到底部的asset中,如果不清楚如何制作预制体可以看我以往栏目下的预制体制作的相关文章。
在这里插入图片描述

步骤六、保存场景及预制体的信息,并点击运行按钮

在这里插入图片描述
end:大功告成!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/150491.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

windows版:TensorRT安装教程

查看版本对应cuda与TensorRT&#xff1a;https://blog.csdn.net/weixin_41540237/article/details/131589929 TensorRT 下载地址&#xff1a;https://developer.nvidia.com/nvidia-tensorrt-7x-download cudnn下载地址&#xff1a;https://developer.nvidia.com/rdp/cudnn-ar…

LVS负载均衡

LVS 概述 LVS是Linux Virtual Server的缩写&#xff0c;是一种基于Linux内核实现的高可用性、高性能的负载均衡技术。它可以将来自客户端的请求分发到多台服务器上&#xff0c;实现多台服务器的负载均衡&#xff0c;提高整个系统的性能和可用性。 LVS技术主要包括以下几个组件…

内网穿透工具NPS(保姆级教程)

前言&#xff1a; 有时候我们受限于硬件设备和网络的的问题&#xff0c;无法将内网的大容量、高性能存储设备或计算设备对外访问。这个时候就会变的特别苦恼&#xff0c;上云呢成本太大&#xff0c;不用云呢公网又无法直接访问&#xff0c;这个时候怎么办呢&#xff0c;NPS它来…

实时level2访问与策略研发

本周四下午4点&#xff0c;天软会聚焦“实时&level2访问与策略研发”开展我们的天软高频时序数仓会议&#xff0c;本次会议的报名客户&#xff0c;可以申请试用LEVEL-2数据测试账号哦~

泛微E9,独立选择框对应数据库表查询

泛微E9&#xff0c;独立选择框对应数据库表查询 文章目录 泛微E9&#xff0c;独立选择框对应数据库表查询步骤一&#xff1a;准备姓名、姓名文本字段&#xff1a;步骤二&#xff1a;获取选择框字段的id&#xff1a;其他 需求描述&#xff1a;假如流程表单有两个字段&#xff0c…

CSRF 跨站请求伪造漏洞理解

1.漏洞描述 跨站请求伪造是一种攻击&#xff0c;它强制浏览器客户端用户在当前对其进行身份验证后的Web应用程序上执行非本意的操作&#xff0c;攻击的重点在处于更改状态请求&#xff0c;而不是盗取数据&#xff0c;因为攻击者无法查看伪造请求的响应。 2.漏洞原理 攻击者可以…

深入探索 Django Channels

概要 随着 Web 应用的发展&#xff0c;实时功能如即时消息、实时通知等变得越来越重要。Django Channels 是 Django 的一个扩展&#xff0c;它使得在 Django 中构建实时功能变得可能。本文将深入探讨 Django Channels 的核心概念、架构以及如何实现一个实时应用。 1. Django C…

PLC电力载波通讯,一种新的IoT通讯技术

前言: PLC-IoT 是 PLC 技术应用在物联场景的创新实践,有效解决电力线路信号干扰、衰减问题,支持 IP 化通信能力,使能终端设备智能化,构建智慧边缘联接。PLC让传统IoT有了更多的连接可能: 电力线通信技术适用的场景包括电力配用电网络、城市智慧路灯、交通路口信号灯、园…

应用架构的演进 I 使用无服务器保证数据一致性

在微服务架构中&#xff0c;一个业务操作往往需要跨多个服务协作完成&#xff0c;包含了读取数据和更新多个服务的数据同时进行。在数据读取和写入的过程中&#xff0c;有一个服务失败了&#xff0c;势必会造成同进程其他服务数据不一致的问题。 亚马逊云科技开发者社区为开发者…

【Nginx】使用nginx进行反向代理与负载均衡

使用场景 反向代理&#xff1a;一个网站由许多服务器承载的&#xff0c;网站只暴露一个域名&#xff0c;那么这个域名指向一个代理服务器ip&#xff0c;然后由这台代理服务器转发请求到网站负载的多台服务器中的一台处理。这就需要用到Nginx的反向代理实现了 负载均衡&#xf…

Vim + YCM + clangd

目录 1. Vim的安装 1.1 Vim安装vim-plug2. 安装YCM3. 进行语言补全配置 3.1 测试效果 1. 目的&#xff1a;让 Vim 像 C/C IDE 一样具备自动补全代码等功能 2. YCM&#xff1a;YouCompleteMe GitHub - ycm-core/YouCompleteMe: A code-completion engine for Vi…

ATFX汇市:10月美国名义CPI年率大降,美元指数创近三月新低

ATFX汇市&#xff1a;据美国劳工部劳动统计局数据&#xff0c;美国10月未季调CPI年率最新值3.2%&#xff0c;低于前值3.7%&#xff0c;低于预期值3.3%&#xff1b;10月未季调核心CPI年率最新值4%&#xff0c;低于前置和预期值的4.1%。名义CPI与核心CPI双双下降&#xff0c;透露…

Vue 中 slot 是什么?作用?分类?如何实现?

结论先行&#xff1a; slot 插槽&#xff0c;是子组件提供给父组件使用的一个占位符&#xff0c;父组件可以在这个占位符中填充任何模板代码。主要作用就是更好的拓展和定制化组件&#xff0c;例如弹窗组件、表格组件等。分为默认插槽、具名插槽和作用域插槽。 其中前两个都是…

LLM系列 | 27 : 天工大模型Skywork解读及揭露刷榜内幕引发的思考

引言 简介 预训练 ​语料 分词器 模型架构 Infrastructure 训练细节 评测 实战 总结 思考 0. 引言 晨起开门雪满山&#xff0c;雪晴云淡日光寒。 Created by DALLE 3 小伙伴们好&#xff0c;我是《小窗幽记机器学习》的小编&#xff1a;卖热干面的小女孩。紧接前…

ATECLOUD-POWER电源测试系统有什么特点?如何用它测试电源模块?

ATECLOUD-POWER电源测试系统 ATECLOUD-POWER是检测电源性能的自动化测试系统&#xff0c;针对电源模块各类测试项目提供定制方案&#xff0c;指导电源模块的设计和生产&#xff0c;保证电源的质量、稳定性和可靠性。该方案包括软件定制开发以及硬件设备选择两方面&#xff0c;根…

idea启动类运行后报错:Port 6380 was already in use.

问题原因&#xff1a; idea窗口中某个项目还在启动中时 误关了窗口&#xff0c;导致在其他项目运行时报错端口被占用 解决办法&#xff1a; 先杀掉占用端口&#xff0c;再重新启动 步骤如下&#xff1a; 1.先找到6380端口对应pid winr打开cmd命令行窗口 输入命令&#xf…

web缓存-----squid代理服务

squid相关知识 1 squid的概念 Squid服务器缓存频繁要求网页、媒体文件和其它加速回答时间并减少带宽堵塞的内容。 Squid代理服务器&#xff08;Squid proxy server&#xff09;一般和原始文件一起安装在单独服务器而不是网络服务器上。Squid通过追踪网络中的对象运用起作用。…

记录一次hibernate3.1 方言问题

错误&#xff1a;com.sun.proxy.$Proxy553 cannot be cast to java.lang.string 我们项目上&#xff0c;将mysql数据库迁移到达梦数据库&#xff0c;这样会造成数据库类型上在java查询下&#xff0c;会有不兼容的问题&#xff0c;比如clob&#xff0c;text等&#xff0c;…

node服务部署vue3(ssr)单页面应用上线

博主最新开发了vue3新版的单页面服务端渲染的博客&#xff0c;框架用的vue3框架&#xff0c;vite4构建&#xff0c;在部署上线的时候遇到了一些问题&#xff0c;现在分享给大家。避免踩坑 node环境搭建 node安装包下载 因为我的服务器系统是linux&#xff0c;所以选择linux版本…

【技术分享】配置二层远程端口镜像案例

热门IT课程-CSDN博客文章浏览阅读24次。认证课程介绍&#xff1a;华为HCIA试听课程 &#xff1a; 华为HCIA试听课程&#xff1a;华为HCIA试听课程&#xff1a;华为HCIP试听课程&#xff1a;思科CCNA试听课程&#xff1a;思科CCNA试听课程&#xff1a;思科CCNA试听课程&#xff…