Создание клавиатуры без клавиш - PullRequest
0 голосов
/ 15 июня 2019

Я недавно следовал учебнику здесь с целью создания пользовательской клавиатуры.Тем не менее, я хочу быть немного более креативным.Вместо ключей я хочу иметь вид холста, где пользователь может рисовать изображения и отправлять их или что-то в этом роде.Я думал, что это будет так же просто, как замена клавиш в макете на типичные представления Android, но оказывается, что это невозможно.

В частности, в файле keyboard.xml я помещаю линейную раскладку.с видом на поверхность внутри.И в файле, где будут определены ключи (key_layout.xml), я оставил это поле пустым.

Затем я создал службу, расширяющую клавиатуру:

public class KiwiService extends InputMethodService implements
    KeyboardView.OnKeyboardActionListener {
    private KeyboardView keyboardView;
    private Keyboard keyboard;

    @Override
    public View onCreateInputView() {
        keyboardView = (KeyboardView) getLayoutInflater().inflate(R.layout.keyboard, null);
        keyboard = new Keyboard(this, R.xml.key_layout);
        keyboardView.setKeyboard(keyboard);
        keyboardView.setOnKeyboardActionListener(this);
        return keyboardView;
    }
}

Когда я попыталсяиспользовать клавиатуру на моем телефоне, вид поверхности не появился, и приложение вскоре рухнуло.Теперь я уверен, что мне, вероятно, не следует определять это как клавиатуру, поскольку на самом деле у нее нет клавиш, но как правильно сделать это в Android?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...