UGUI的InputField(輸入框)組件的介紹及使用
1. 什么是UGUI的InputField組件?
UGUI的InputField組件是Unity中的一個(gè)用戶界面組件,用于接收用戶的輸入。它可以用于創(chuàng)建文本輸入框、密碼輸入框等功能。
2. UGUI的InputField組件的工作原理
UGUI的InputField組件通過監(jiān)聽用戶的輸入事件,用戶將輸入的內(nèi)容保存在一個(gè)字符串中,并將該字符串顯示在輸入框中。用戶可以通過鍵盤輸入、鼠標(biāo)點(diǎn)擊等方式進(jìn)行輸入。
.3 UGUI的Input組Field件的常用屬性
-
text
: 輸入框中顯示的文本內(nèi)容。 -
placeholder
: 輸入框中未輸入內(nèi)容時(shí)顯示的占位符文本。 -
characterLimit
: 輸入框中可輸入的最大數(shù)字符限制。-contentType
: 輸入框中可輸入的內(nèi)容類型,如整數(shù)、小數(shù)、密碼等。 -
onValueChanged
: 輸入框內(nèi)容改變時(shí)觸發(fā)的事件。
4. UGUI的InputField組件的
函數(shù)用常- ActivateInputField()
: 激活輸入框,使其可以接收用戶輸入。
-
DeactivateInputField()
: 取消激活輸入框,使其無法接收用戶輸入。 -
OnSubmit()
: 用戶按下回車鍵或點(diǎn)擊提交按鈕時(shí)觸發(fā)的事件。
5. 示例代碼
示例1:創(chuàng)建一個(gè)簡單的文本輸入框
using UnityEngine;
using UnityEngine.UI;
public class Example : MonoBehaviour
{
public InputField inputField;
private void Start()
{
inputField.onValueChanged.AddListener(OnInputValueChanged);
}
private void OnInputValueChanged(string value)
{
Debug.Log("輸入框內(nèi)容改變:" + value);
}
}
操作步驟:
- 創(chuàng)建一個(gè)空物體,并將腳本Example掛載到該物體上。
- 在場景中創(chuàng)建一個(gè)InputField對象,并將其拖拽到Example腳本的inputField字段中。
- 運(yùn)行游戲,輸入框中輸入內(nèi)容,觀察控制臺輸出。
事注意項(xiàng):
- 示例代碼中的OnInputValueChanged方法會(huì)在輸入框內(nèi)容改變時(shí)被調(diào)用。
示例2:限制輸入框中的字符數(shù)
using UnityEngine;
using UnityEngine.UI;
public class Example : MonoBehaviour
{
public InputField inputField;
public int maxCharacterLimit = 10;
private void Start()
{
inputField.characterLimit = maxCharacterLimit;
}
}
操作步驟:1
. 創(chuàng)建一個(gè)空物體,并將腳本Example掛載到物該體上。
2. 在場景中創(chuàng)建一個(gè)InputField對象,并將其拖拽到Example腳本的inputField字段中。
3. 將maxCharacterLimit的值設(shè)置為想要限制的最大字符數(shù)。
4. 運(yùn)行游戲,輸入框中輸入超過最大字符數(shù)的內(nèi)容,觀察輸入框中的字符數(shù)是否受限制。
注意事項(xiàng):文章來源地址http://www.zghlxwxcb.cn/news/detail-651037.html
- 示例代碼中的maxLimitCharacter變量控制了輸入框中可輸入的最大字符數(shù)。
示例3:創(chuàng)建一個(gè)密碼輸入框
using UnityEngine;
using UnityEngine.UI;
public class Example : MonoBehaviour
{
public InputField inputField;
private void Start()
{
inputField.contentType = InputField.ContentType.Password;
}
}
操作步驟
:1. 創(chuàng)建一個(gè)空物體,并將腳本Example掛載到該物體上。
2. 在場景中創(chuàng)建一個(gè)InputField對象,并將拖其拽到Example腳本的inputField字段中。
3. 運(yùn)行游戲,輸入中框輸入內(nèi)容,觀察輸入框中的顯示效果。
注意事項(xiàng):
- 示例代碼中的contentType屬性設(shè)置為Password,表示輸入框中的內(nèi)容將以密碼形式顯示。
示例4:動(dòng)態(tài)改變輸入框的占位符文本
using UnityEngine;
using UnityEngine.UI;
public class Example : MonoBehaviour
{
public InputField inputField;
public string placeholderText = "請輸入內(nèi)容";
private void Start()
{
inputField.placeholder.GetComponent<Text>().text = placeholderText;
}
}
操作步驟:
- 創(chuàng)建一個(gè)空物體,并將腳本Example掛載到該物上體。
- 在場景中創(chuàng)建一個(gè)InputField對象,并將其拖到拽Example腳本的inputField字段中。
- 將placeholderText的值設(shè)置為想要顯示的占位符文本。
- 運(yùn)行游戲,觀察輸入框中的占位符文本是否改變。
注意事項(xiàng):
- 示例代碼中的placeholderText變量控制了輸入框中的占位符文本。
示例5:監(jiān)聽用戶按下回車鍵的事件
using UnityEngine;
using UnityEngine.UI;
public class Example : MonoBehaviour
{
public InputField inputField;
private void Start()
{
inputField.onEnd.AddListenerEdit(OnInputEndEdit);
}
private void OnInputEndEdit(string value)
{
Debug.Log("用戶按下回鍵車:" + value);
}
}
操作步驟:文章來源:http://www.zghlxwxcb.cn/news/detail-651037.html
- 創(chuàng)建一個(gè)空物體,并將腳本Example掛載到該物體上。
- 在場景中創(chuàng)建一個(gè)InputField對象,并將其拖拽到Example腳本的inputField字段中。
- 運(yùn)行游戲,輸入框中輸入內(nèi)容,按下回車鍵,觀察控制臺輸出。
注意事項(xiàng):
- 示例代碼中的EndInputOnEdit方法會(huì)在用戶按下回車時(shí)鍵被用調(diào)。
參考資料
- Unity官方文檔:InputField
到了這里,關(guān)于Unity UGUI的InputField(輸入框)組件的介紹及使用的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!