Материалы отфильтрованы по дате: июля 2019

Добрый день, Друзья.

Если Ваше приложение для мобильного устройства, то при переходе в inputbox, автоматически открывается родное приложение клавиатуры.

Но я столкнулся с проблемой при разработке приложения для тач-скрина на платформе windows.

Теоретически, экранная клавиатура в нем есть и я вначале использовал системный вызов, подсмотренный здесь:

    public void ShowTouchKeyboard()
    {
        ExternalCall("C:\\Program Files\\Common Files\\Microsoft Shared\\ink\\tabtip.exe", null, false);
    }
 

или

    public void ShowOnScreenKeyboard()
    {
        if (_onScreenKeyboardProcess == null || _onScreenKeyboardProcess.HasExited)
            _onScreenKeyboardProcess = ExternalCall("OSK", null, false);
    }

Но столкнулся с тем, что она периодически глючила - либо не появлялась, либо залипали кнопки, в связи с этим было решено набросать свой Prefab для Unity, более того, выложил его в assetstore (об этом возможно отдельную статью напишу позже).

Asset бесплатный, скачивайте и пользуйтесь на здоровье:

https://assetstore.unity.com/packages/tools/input-management/osk-onscreenkeyboard-rus-eng-148532

Опубликовано в Unity3D