2016-04-22 3 views
1

Хорошо, так вот что: Я работаю с клавиатурой (https://github.com/AnySoftKeyboard/AnySoftKeyboard) и сканером штрих-кода (https://github.com/dm77/barcodescanner). Когда я нажимаю определенную кнопку на клавиатуре, он открывает сканер штрих-кода, после того, как он сканирует, он возвращается к предыдущему экрану (скажем, приложение для обмена сообщениями) с результатом. Все тонкие и денди, за исключением того, что я не могу вставить результат в EditText, потому что входное соединение «getCurrentInputConnection()» отличается от исходного (перед запуском активности сканера штрих-кода), потому что это другой экземпляр (это происходит из-за того, что я запускаю действие сканера штрих-кода и после того, как я возвращаюсь на начальный экран (приложение для обмена сообщениями с показанной клавиатурой и сфокусировано на EditText). Вот код для вставки в любой EditText из любого приложения:Custom Keyboard - результаты сканирования штрих-кода

InputConnection inputConnection = getCurrentInputConnection(); 
inputConnection.setComposingText(scanResult, 1); 

Любые идеи о том, как решить эту проблему?

ответ

0

Таким образом, мне удалось решить эту (для тех, кто сталкивается с этой проблемой) проблемы ва s, когда я получил результат (на предыдущем экране), мне пришлось заставить его ждать 1 секунду (с runnable и handler - postDelayed), а затем getCurrentInputConnection() и вставить результат внутри.

Смежные вопросы