1. Help us improve the editor usability and artist workflows. Join our discussion to provide your feedback.
    Dismiss Notice
  2. We're looking for feedback on Unity Starter Kits! Let us know what you’d like.
    Dismiss Notice
  3. We’re giving 2017.1 beta testers a chance to win t-shirts and a Nintendo Switch. Read more on the blog.
    Dismiss Notice
  4. Unity 2017.1 beta is now available for download.
    Dismiss Notice
  5. Unity 5.6 is now released.
    Dismiss Notice
  6. Get further faster with the Unity Plus Accelerator Pack, free for new Unity Plus subscribers for a limited time. Click here for more details.
    Dismiss Notice
  7. Check out all the fixes for 5.6 on the patch releases page.
    Dismiss Notice
  8. Learn how you'll soon be able to publish your games to China in four simple steps with Xiaomi. Sign up now for early access.
    Dismiss Notice

Simple Input Text Field?

Discussion in 'Scripting' started by GGames, Jul 26, 2013.

  1. GGames

    GGames

    Joined:
    Oct 20, 2012
    Posts:
    66
    I need a simple input TextField in Unity, for example for writing the user's name.
    Something like the Input Text Fields in Flash would be perfect.
    When the users clicks on them typing is enabled.
     
  2. Eric5h5

    Eric5h5

    Volunteer Moderator Moderator

    Joined:
    Jul 19, 2006
    Posts:
    31,094
    GUI.TextField.

    --Eric
     
  3. GGames

    GGames

    Joined:
    Oct 20, 2012
    Posts:
    66
    Can you provide example code?
    GUI.TextField(new Rect(32, 32, 180, 32), "xd");
    This gives me an error.
     
  4. Eric5h5

    Eric5h5

    Volunteer Moderator Moderator

    Joined:
    Jul 19, 2006
    Posts:
    31,094
    The docs have sample code. You really need to say what the error is; "this give me an error" doesn't help much.

    --Eric
     
  5. GGames

    GGames

    Joined:
    Oct 20, 2012
    Posts:
    66
    The exact code I posted gives me the following error:
    "NullReferenceException: Object reference not set to an instance of an object
    UnityEngine.GUIUtility.GetControlID (FocusType focus, Rect position)
    UnityEngine.GUI.TextField (Rect position, System.String text)
    Main.Start () (at Assets/Main.cs:12)
    "
     
  6. GGames

    GGames

    Joined:
    Oct 20, 2012
    Posts:
    66
    Wow, sorry, I forgot to put it inside OnGUI...
     
  7. GGames

    GGames

    Joined:
    Oct 20, 2012
    Posts:
    66
    Also, any idea how to restrict the input to only numbers?
     
  8. Eric5h5

    Eric5h5

    Volunteer Moderator Moderator

    Joined:
    Jul 19, 2006
    Posts:
    31,094
  9. GGames

    GGames

    Joined:
    Oct 20, 2012
    Posts:
    66