效果如下:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class Chat02 : MonoBehaviour
{
public InputField chatInput; //消息输入框
public GameObject ChatTextArea; //消息预制体
public Transform textShowContent; //消息父物体
public ScrollRect scrollRect;
string username = "admin";
// Update is called once per frame
void Update()
{
if (Input.GetKeyDown(KeyCode.Return) || Input.GetKeyDown(KeyCode.KeypadEnter))
{
if (chatInput.text != "")
{
string addText = "<color=red>" + username + "</color>:" + chatInput.text;
GameObject chatTextArea = GameObject.Instantiate(ChatTextArea, textShowContent);//也可以Resources.load预制体
chatTextArea.SetActive(true);
Text text = chatTextArea.GetComponent<Text>();
text.text = addText;
chatInput.text = "";
chatInput.ActivateInputField();
//强制更新,如果滚动条显示了,让滚动条始终在最低下。
Canvas.ForceUpdateCanvases();
scrollRect.verticalNormalizedPosition = 0f;
Canvas.ForceUpdateCanvases();
}
}
}
}