Author Topic: UIInput Bug  (Read 2156 times)

AnnaKang

  • Newbie
  • *
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 11
    • View Profile
UIInput Bug
« on: March 03, 2014, 02:17:08 AM »



Hi, i have a problem with uiinput.
when i enter koreans, input cursor dosen't move next.
so i can't enter next charactor.
just overwrite charactor in same position.
what should i do??


ArenMook

  • Administrator
  • Hero Member
  • *****
  • Thank You
  • -Given: 337
  • -Receive: 1171
  • Posts: 22,128
  • Toronto, Canada
    • View Profile
Re: UIInput Bug
« Reply #1 on: March 04, 2014, 12:15:12 AM »
Inputting Korean characters goes through IME, which is on the Unity's side. Check to see what gets returned in UIInput, line 502 (Input.compositionString).

adam718

  • Jr. Member
  • **
  • Thank You
  • -Given: 2
  • -Receive: 0
  • Posts: 60
    • View Profile
Re: UIInput Bug
« Reply #2 on: March 19, 2014, 10:15:12 AM »
I have a same problem when inputing korean. (Unity 4.3.4, NGUI 3.5.3)
When i input more than 2 characters, it doesn't go to next charactor (always showing one last character).

I checked in Unity's built in GUI system and korean's working fine.

It has worked before (NGUI 2.x)
Is there any solution?

adam718

  • Jr. Member
  • **
  • Thank You
  • -Given: 2
  • -Receive: 0
  • Posts: 60
    • View Profile
Re: UIInput Bug
« Reply #3 on: March 19, 2014, 10:19:48 AM »
I changed the code like following and it's working.

// There seems to be an inconsistency between IME on Windows, and IME on OSX.
// On Windows, Input.inputString is always empty while IME is active. On the OSX it is not.
if (string.IsNullOrEmpty(ime) && !string.IsNullOrEmpty(Input.inputString))
=>
if (!string.IsNullOrEmpty(Input.inputString))

I am in windows.