Search code examples
unity-game-engineunity3d-gui

Related to the default iOS Keyboard that comes out in Input Filed(available in UI System)


I am working on an app for iOS Platform. i have a Input Field available in the new UI System , but every time the White Classic keyboard comes out to take input. I want to display the keyboard with a black semi-transparent background. Can anyone help me out with this?

I tried TouchScreenKeyboard.Open("", TouchScreenKeyboardType.Default, false, false, true, true); T his opens the black semi-transparent background keyboard but when i hit the input field again then the classic white keyboard comes.

I want the black semi-transparent background keyboard as my default keyboard.

Thank You for helping.


Solution

  • Finally i got the answer to my own question.

    Open your project in Xcode. Open the Classes Folder. Inside it open the UI Folder. Inside it open the file Keyboard.mm

    Classes>UI Folder>Keyboard.mm

    [we can see the UIKeyboardAppearance selection] https://i.sstatic.net/yKr7n.png

    In here we can see two type of keyboards

    1.UIKeyboardAppearanceDefault

    2.UIKeyboardAppearanceAlert

    and below there is a line that decides which type of keyboard should appear

    keyboardAppearances[alert ? 1 : 0],

    Just change the order of the keyboard appearance according to your convenience

    This is a cheap solution. Actually you should change the value of the alert bool from wherever this method is being called

    [see the UnityKeyboard_Show Method]

    https://i.sstatic.net/kJNL6.png