Не работает ввод текста - PullRequest
0 голосов
/ 10 июля 2019

В моем onCreateInputView InputMethodService у меня есть BroadcastReceiver, который прослушивает события из моего приложения. Мой BroadcastReceiver получает текст и пытается вставить его в текущее текстовое поле. Проблема в том, что текст никогда не вставляется в текущее текстовое поле, все работает нормально, кроме текста, не вставленного в поле editText.

Здесь я публикую свой фрагмент кода

 @Override
    public View onCreateInputView() {
        kv = (KeyboardView) getLayoutInflater().inflate(R.layout.activity_main, null);
        keyboard = new Keyboard(this, R.xml.qwerty);
        kv.setKeyboard(keyboard);
        kv.setOnKeyboardActionListener(this);

        broadcastReceiver = new BroadcastReceiver() {
            @Override
            public void onReceive(Context context, Intent intent) {
                String resultData = intent.getStringExtra(Main2Activity.SERVICE_MESSAGE);

                InputConnection ic = getCurrentInputConnection();
                if (ic != null) {
                    ic.commitText(resultData, resultData.length());
                }
            }
        };

        LocalBroadcastManager lbm = LocalBroadcastManager.getInstance(this);
        lbm.registerReceiver(broadcastReceiver, new IntentFilter(Main2Activity.SERVICE_RESULT));

        return kv;
    }
...