Unity InputFiled TMP属性和各种监听示例详解

Unity InputField TMP属性和各种监听示例详解

什么是InputField?

InputField是Unity中的一个UI控件,它可以让用户在UI界面中输入文本。InputField通常结合TextMeshPro(简称TMP)组件使用,用于控制文本的显示。InputField有丰富的属性和事件可以掌控,本文将详细解析。

InputField常用属性

text

InputField默认显示的文本。

selectionColor

设置用户选中文本时的高亮颜色。

characterLimit

输入的字符数量限制。

contentType

设置输入的内容类型,如普通文本、整数、浮点数、电子邮件等。

inputType

设置输入方式,如默认的标准字符输入、密码输入等。

placeholder

InputField中无文本时显示的占位符文本。

caretBlinkRate

光标闪烁的速率。

caretWidth

光标的宽度。

InputField常用事件

onValueChanged

当InputField中的文本发生改变时发生。

onEndEdit

当用户结束编辑InputField时发生,比如鼠标离开InputField或按下回车键。

onSelect

当用户选中InputField时发生。

onDeselect

当用户取消选中InputField时发生。

InputField常用方法

ActivateInputField()

激活InputField,让其获得焦点并在其内部等待用户输入。

DeactivateInputField()

使InputField失去焦点并停止输入状态。

示例1:显示InputField中的文本

我们通过下面这段代码来显示InputField中的文本:

using TMPro;
using UnityEngine;
using UnityEngine.UI;

public class ShowInput : MonoBehaviour
{
    public InputField inputField;
    public TextMeshProUGUI outputText;

    private void Start()
    {
        inputField.onEndEdit.AddListener(ShowText);
    }

    private void ShowText(string text)
    {
        outputText.text = "输入的文本为:" + text;
    }
}

这个示例中,我们在Start方法中为InputField的onEndEdit事件添加了一个回调。回调函数ShowText会在用户编辑完成InputField后被触发,将InputField中的文本传递给了一个TextMeshProUGUI组件,从而在UI界面上显示出来。

示例2:限制用户输入的字符数量

我们通过下面这段代码来限制用户在InputField中输入的字符数量:

using TMPro;
using UnityEngine;
using UnityEngine.UI;

public class LimitInput : MonoBehaviour
{
    public InputField inputField;
    public TextMeshProUGUI infoText;
    public int maxCharacters = 10;

    private void Start()
    {
        inputField.characterLimit = maxCharacters;
        inputField.onEndEdit.AddListener(LimitText);
    }

    private void LimitText(string text)
    {
        if (text.Length > maxCharacters)
        {
            infoText.text = "您输入的字符数超过了" + maxCharacters + "个,请重新输入。";
            inputField.text = "";
        }
        else
        {
            infoText.text = "您当前已输入" + text.Length + "个字符。";
        }
    }
}

这个示例中,我们设置了InputField的characterLimit属性来限制用户输入的字符数量,并在onEndEdit事件触发时,检查用户输入的字符数量是否超过了设定限制。如果超过了限制,就将InputField中的文本清空,并提示用户重新输入。如果没有超过限制,就在UI界面上显示已输入字符数量。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Unity InputFiled TMP属性和各种监听示例详解 - Python技术站

(1)
上一篇 2023年6月3日
下一篇 2023年6月3日

相关文章

  • C# Linq的GroupBy()方法 – 根据指定的键对序列中的元素进行分组

    C# Linq中的GroupBy()方法是一个非常有用的聚合方法,它可以将集合中的元素按照指定的键(key)进行分组,从而实现数据的聚合和统计。下面就是C# Linq的GroupBy()的完整攻略: 1. GroupBy()语法格式 GroupBy()方法的语法格式如下: var groups = collection.GroupBy(x => x.K…

    C# 2023年4月19日
    00
  • C#词法分析器之词法分析的使用详解

    C#词法分析器之词法分析的使用详解 1. 什么是词法分析? 词法分析是计算机程序设计中的一个重要课题,主要是指将字符串分解成一系列有意义的单词(Token)的过程。单词是一个程序语言中最基本、最小的语法单位,它是程序理解和描述的基础。在编译器、解释器、代码编辑器等领域都有广泛的应用。 2. C#中的词法分析器 在C#中,词法分析器(Lexical Analy…

    C# 2023年6月7日
    00
  • VS2012 程序打包部署图文详解

    VS2012 程序打包部署图文详解 在开发过程中,我们往往需要将自己开发的程序打包部署,让其他人可以方便地安装和使用我们的程序。本攻略将介绍如何使用 VS2012 打包部署程序。下面将详细讲述打包部署程序的步骤。 1.在 Visual Studio 中创建安装程序项目 打开 Visual Studio,点击“文件”–>“新建”–>“项目”,在…

    C# 2023年6月3日
    00
  • C#事件标准命名规则及说明(包括用作事件类型的委托命名)

    下面是关于“C#事件标准命名规则及说明(包括用作事件类型的委托命名)”的完整攻略。 1. 事件标准命名规则 1.1 委托命名 在C#中,常用委托命名作为事件的类型,因此委托的命名很关键。根据Microsoft官方文档的建议,委托命名应该基于事件的名称以及命名以EventHandler结尾。例如,声明一个叫做“ButtonClick”的事件,应该使用以下的委托…

    C# 2023年5月15日
    00
  • C#生成EMF矢量图形文件示例详解

    下面我会详细讲解一下“C#生成EMF矢量图形文件示例详解”的完整攻略。 EMF矢量图形文件 EMF是”Enhanced Metafile”的缩写,它是一种Windows图形文件格式,可以存储矢量图形信息。EMF文件可以使用Windows内置的画图工具或其他第三方软件打开和编辑,其中包含的矢量图形信息可以在不失真地进行无限放大或缩小。 C#生成EMF矢量图形文…

    C# 2023年5月14日
    00
  • C#获取文件夹所占空间大小的功能

    要实现该功能,可以使用C#内置的System.IO命名空间下的DirectoryInfo类和FileInfo类。下面是详细的步骤: 使用DirectoryInfo类创建文件夹的实例。 DirectoryInfor dirInfo = new DirectoryInfo(@"C:\Users\Administrator\Desktop\Example…

    C# 2023年6月1日
    00
  • .NET CORE 鉴权的实现示例

    .NET Core 鉴权的实现示例 在本攻略中,我们将详细讲解如何在.NET Core中实现鉴权,并提供两个示例说明。 鉴权简介 鉴权是指验证用户身份和权限的过程。在Web应用程序中,鉴权通常用于限制用户访问某些资源或执行某些操作,以保护应用程序的安全性和完整性。 实现鉴权 在.NET Core中实现鉴权,需要进行以下步骤: 配置认证和授权服务 在.NET …

    C# 2023年5月16日
    00
  • PostgreSQL教程(二十):PL/pgSQL过程语言

    PL/pgSQL是PostgreSQL所支持的一种过程语言,它具有丰富的特性,可供开发者在数据库端编写存储过程和触发器等逻辑。以下是PL/pgSQL过程语言的完整攻略: 1. PL/pgSQL的基本语法结构 PL/pgSQL的语句格式如下: DECLARE — 声明变量 BEGIN — … — statements EXCEPTION — ……

    C# 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部