【CocosCreator入门】CocosCreator组件 | EditBox(文本输入)组件

       Cocos Creator 是一款流行的游戏开发引擎,具有丰富的组件和工具,其中的EditBox组件是一种用于实现用户输入交互的重要组件。它可以让用户在游戏中输入文字、数字等内容,并且可以对输入内容进行格式校验和处理。


目录

一、组件介绍

二、组件属性

三、脚本示例


一、组件介绍

       EditBox组件是Cocos Creator提供的一种用户输入组件,主要用于实现用户输入和交互。通过设置EditBox组件的属性和事件,可以实现各种不同的输入效果,例如密码输入、数字输入和表单输入等。

二、组件属性

属性功能说明
String输入框的初始输入内容,如果为空则会显示占位符的文本
Placeholder输入框占位符的文本内容
Background输入框背景节点上挂载的 Sprite 组件对象
Text Label输入框输入文本节点上挂载的 Label 组件对象
Placeholder Label输入框占位符节点上挂载的 Label 组件对象
KeyboardReturnType指定移动设备上面回车按钮的样式
Input Flag指定输入标识:可以指定输入方式为密码或者单词首字母大写(仅支持 Android 平台)
Input Mode指定输入模式: ANY 表示多行输入,其它都是单行输入,移动平台上还可以指定键盘样式。
Max Length输入框最大允许输入的字符个数
Tab Index修改 DOM 输入元素的 tabIndex,这个属性只有在 Web 上面修改有意义。
Editing Did Began开始编辑文本输入框触发的事件回调。
Text Changed编辑文本输入框时触发的事件回调。
Editing Did Ended结束编辑文本输入框时触发的事件回调。
Editing Return当用户按下回车按键时的事件回调,目前不支持 windows 平台。

Editing Did Began 

属性功能说明
Target带有脚本组件的节点。
Component脚本组件名称。
Handler指定一个回调函数,当用户开始输入文本的时候会调用该函数
CustomEventData用户指定任意的字符串作为事件回调的最后一个参数传入。

Text Changed

属性功能说明
Target带有脚本组件的节点。
Component脚本组件名称。
Handler指定一个回调函数,当用户正在输入文本的时候会调用该函数
CustomEventData用户指定任意的字符串作为事件回调的最后一个参数传入。

Editing Did Ended

属性功能说明
Target带有脚本组件的节点。
Component脚本组件名称。
Handler指定一个回调函数,当用户输入文本结束时会调用该函数。
CustomEventData用户指定任意的字符串作为事件回调的最后一个参数传入。

Editing Return

属性功能说明
Target带有脚本组件的节点。
Component脚本组件名称。
Handler指定一个回调函数,当用户输入文本按下回车键时会调用该函数。
CustomEventData用户指定任意的字符串作为事件回调的最后一个参数传入。

三、脚本示例

       下面是一个使用EditBox组件实现用户输入交互的示例代码:

cc.Class({
    extends: cc.Component,
    properties: {
        editBoxNode: cc.Node, // EditBox节点
        inputText: '', // 输入的文本
        maxLength: 10, // 最大输入长度
        inputMode: cc.EditBox.InputMode.ANY, // 输入方式
        keyboardType: cc.EditBox.KeyboardType.DEFAULT, // 键盘类型
        inputFlag: cc.EditBox.InputFlag.DEFAULT, // 输入标志
    },
    onLoad () {
        let editBox = this.editBoxNode.getComponent(cc.EditBox);
        editBox.maxLength = this.maxLength;
        editBox.inputMode = this.inputMode;
        editBox.keyboardType = this.keyboardType;
        editBox.inputFlag = this.inputFlag;
        editBox.node.on('editing-did-ended', this.onEditEnd, this);
        editBox.node.on('text-changed', this.onTextChanged, this);
    },
    onEditEnd (event) {
        this.inputText = event.detail.string;
        console.log('Input Text:', this.inputText);
    },
    onTextChanged (event) {
        this.inputText = event.detail.string;
        console.log('Input Text:', this.inputText);
    },
});

       通过以上代码,我们可以动态地创建一个EditBox节点,并添加EditBox组件。在实际开发中,可以根据需要修改和扩展代码。


       使用Cocos Creator的EditBox组件可以帮助我们实现用户输入交互,并且可以对输入内容进行格式校验和处理。通过设置EditBox组件的属性和事件,可以让用户输入各种不同类型的内容,例如文字、数字、密码等。        


http://www.niftyadmin.cn/n/247403.html

相关文章

JavaScript常见面试题

一、浏览器为什么要阻止跨域请求? 因为浏览器的"同源政策","同源政策"主要解决浏览器的安全问题,"同源"是协议、域名和端口都相同,只要有一个不同就是非同源,就会有跨域问题。 二、如…

商品价格监控业务场景,API数据分析

商品价格监控指的是对特定商品价格进行实时监控和跟踪,及时更新最新价格并分析价格变化的行为。这种监控可以帮助企业及时了解市场行情,并根据价格变化情况做出相应的调整,以更好地应对市场变化。 一般来说,商品价格监控需要以下…

SpringBoot搭建及课程笔记

1 安装JDK 下载链接: Index of java-local/jdk/8u181-b13 (huaweicloud.com) 安装教程: JDK下载(jdk1.8下载与安装教程) - 哔哩哔哩 (bilibili.com) 2 MAVEN配置 (212条消息) Maven-3.6.1下载与环境搭建(解决IDEA兼容问题)及其配置_有梦想的Progra…

ESP32使用ESP-NOW协议实现一对多通信和MAC地址存储

目录 介绍ESP-NOW 协议概述在 ESP32 上配置 ESP-NOW使用 ESP-NOW 进行一对多通信在 ESP32 上存储发件人的 MAC 地址代码结论 介绍 ESP32 是一款功能强大的 Wi-Fi 和蓝牙双模模块,可用于使用 ESP-NOW 协议实现低功耗、高效率的一对多通信。本文将介绍如何使用ESP-NO…

百度ai智能写作工具-百度ai自动写文章

百度AI智能写作工具:让创作更快捷、高效! 在当今竞争激烈的文化创意市场中,创作一篇高质量的文章需要投入大量时间和精力。然而,有了百度AI智能写作工具,创作变得更快捷、高效了。 百度AI智能写作工具采用最先进的人…

基于vue+laravel技术框架开发的:PHP不良事件上报系统源码

医院安全(不良)事件上报系统源码,PHP不良事件上报系统源码 系统定义: 规范医院安全(不良)事件的主动报告,增强风险防范意识,及时发现医院不良事件和安全隐患,将获取的医…

PHP +python+nodejs+springboot+vue 校园电子资料资源管理系统

能实现不出家门就可以通过网络进行系统管理,交易等,而且过程简单、快捷。同样的,在人们的工作生活中,也就需要互联网技术来方便人们的日常工作生活,实现工作办公的自动化处理,实现信息化,无纸化…

C语言实现链表--数据结构

魔王的介绍:😶‍🌫️一名双非本科大一小白。魔王的目标:🤯努力赶上周围卷王的脚步。魔王的主页:🔥🔥🔥大魔王.🔥🔥🔥 ❤️‍&#x1…