2015-02-02 3 views
9

के साथ यूनिटी 3 डी में इनपुट फ़ील्ड से टेक्स्ट प्राप्त करें मैं के साथ Unity3D में इनपुट फ़ील्ड के अंदर एक टेक्स्ट प्राप्त करने का प्रयास कर रहा हूं।सी #

मैंने अपने संपादक में एक इनपुट फ़ील्ड रखा है, इसका नाम बदलकर टैग किया गया है: उपयोगकर्ता नाम_फील्ड

मेरा प्रश्न है: कैसे मैं एक C# लिपि में InputFieldUsername_field के अंदर का पाठ मिल सकता है?

धन्यवाद :)

+0

मैं InputField.value साथ यह करने के लिए कर लिया है। उदाहरण: मान सेट करने के लिए मान या myInputField.value = "test" प्राप्त करने के लिए स्ट्रिंग s = myInputField.value। – jadkins4

उत्तर

30

अपने InputField gameObject को monobehaviour स्क्रिप्ट नीचे संलग्न करें:

public class test : MonoBehaviour { 
    void Start() 
    { 
     var input = gameObject.GetComponent<InputField>(); 
     var se= new InputField.SubmitEvent(); 
     se.AddListener(SubmitName); 
     input.onEndEdit = se; 

     //or simply use the line below, 
     //input.onEndEdit.AddListener(SubmitName); // This also works 
    } 

    private void SubmitName(string arg0) 
    { 
     Debug.Log(arg0); 
    } 
} 

भी देखें एनीमेशन नीचे:

enter image description here

+0

Thnaks लेकिन मुझे यह त्रुटि मिलती है, मुझे एक कदम याद आया? http://i.imgur.com/BHpQGlw.png –

+0

हल, धन्यवाद! –

2

आप InputField की या "मान बदलें पर" "का अर्थ अंतिम संपादित करें" घटना का उपयोग कर सकते हैं। http://docs.unity3d.com/Manual/UnityEvents.html

वैकल्पिक रूप से, आप भी Text property of the Text control कि आपके InputField से जुड़ा हुआ है का उपयोग कर पाठ का उपयोग करने के लिए सक्षम होना चाहिए:

Unity3D प्रलेखन कैसे एक UnityEvent का उपयोग करने के बारे में अधिक विस्तार प्रदान करता है।

+0

दस्तावेज़ों के लिए धन्यवाद! –