写一个unity脚本 按下按钮生成一个文本输入框和文本显示框,要求在文本输入框中输入的内容会显示在文本显示框中
时间: 2024-05-12 20:16:17 浏览: 155
下面是一个简单的Unity脚本,实现了按下按钮生成文本输入框和文本显示框,并将输入的内容显示在文本显示框中。
```csharp
using UnityEngine;
using UnityEngine.UI;
public class TextInput : MonoBehaviour {
public GameObject inputField; // 文本输入框的预制体
public GameObject outputText; // 文本显示框的预制体
private GameObject currentInput; // 当前的文本输入框
private GameObject currentOutput; // 当前的文本显示框
public void OnButtonClick() {
// 生成文本输入框
currentInput = Instantiate(inputField, transform);
currentInput.transform.SetAsLastSibling(); // 放到最上层
// 生成文本显示框
currentOutput = Instantiate(outputText, transform);
currentOutput.transform.SetAsLastSibling(); // 放到最上层
// 给文本输入框添加监听
InputField input = currentInput.GetComponent<InputField>();
input.onValueChanged.AddListener(delegate {OnInputValueChange(input);});
}
private void OnInputValueChange(InputField input) {
// 将输入的内容显示在文本显示框中
Text output = currentOutput.GetComponent<Text>();
output.text = input.text;
}
}
```
使用方法:
1. 在场景中创建一个空物体,添加上该脚本。
2. 创建两个UI预制体,分别为文本输入框和文本显示框,并将它们赋值到脚本中的对应变量。
3. 在UI中添加一个按钮,将其点击事件绑定到该脚本的OnButtonClick方法上。
4. 运行游戏,点击按钮即可生成文本输入框和文本显示框。在文本输入框中输入内容,即可在文本显示框中看到输入的内容。
阅读全文