uGUI练习(八) InputField

时间:2023-03-08 16:25:24
uGUI练习(八) InputField

InputField 文本输入组件,本文练习InputField的属性及事件

一、属性

uGUI练习(八) InputField

1、Character Limit

限制字符长度(0表示不限制),比如:设置只能输入3个字符(中文,英文,数字,符号都按1个字符来算),如下图所示

uGUI练习(八) InputFielduGUI练习(八) InputFielduGUI练习(八) InputFielduGUI练习(八) InputField

2、Multi Line:多选显示

3、validation:验证输入类型

uGUI练习(八) InputField

4、keyboardType:键盘类型

uGUI练习(八) InputField

二、事件

1. onSubmit

当文本框提交时触发这个事件

2. onValidateInput

当在验证字符串是触发这个事件,可以用来当输入错误时及时提示

3. 函数列表

uGUI练习(八) InputField

uGUI练习(八) InputField

三、Submit练习

1、创建一个Panel,在Panel下创建一个InputField,两个Text,如下图所示

uGUI练习(八) InputFielduGUI练习(八) InputField

2、设置InputFileld的Anchor为Bottom Center,其中一个Text命名为TextField,并把它设为 Stretch,并一个Text Anchor为Top Center

InputField练习代码

3、创建InputFieldScene.cs ,代码如下:

using UnityEngine;
using UnityEngine.UI;
using System.Collections; public class InputFieldScene : MonoBehaviour {
[SerializeField]
private InputField inputField;
[SerializeField]
private Text textField; void Awake()
{
inputField.validation = InputField.Validation.Name;
inputField.keyboardType = TouchScreenKeyboardType.Default;
} void Start()
{
inputField.onSubmit.AddListener(OnSubmit);
} void OnSubmit(string text)
{
textField.text = textField.text + "\n\t\t\t\t" + text;
inputField.value = "";
}
}

其中上面的代码主要部分是在 OnSubmit(string text) 函数,就是 回车 提交事件。

4、把InputFieldScene绑定在InputField上,设置好参数

四、Submit效果

uGUI练习(八) InputField