Nativescript Сохранить клавиатуру после нажатия Enter - Android - PullRequest
0 голосов
/ 10 октября 2018

Я пытаюсь создать вид чата в Nativescript Javascript.У меня так, что кнопка «Отправить» на клавиатуре нажата и отправляет сообщение.

Я использую приведенный ниже код, чтобы держать клавиатуру открытой, однако у меня странное поведение, при котором первый «ввод»нажатие кнопки на клавиатуре не зарегистрировано, и я должен нажать ее еще раз, чтобы отправить первое сообщение.

Это только в первом сообщении, поэтому я должен сделать двойной щелчок, и с этого моментаон работает как обычно, отправляя отдельные сообщения с каждым щелчком мыши и постоянно показывая клавиатуру.

У меня есть проблема, из-за которой у меня есть следующий код:

const page = args.object;
testingText = page.getViewById("chatText");
testingText.focus();

if(testingText.android)
{
    console.log("PAST IF");
    testingText.android.setOnEditorActionListener(new 
                  android.widget.TextView.OnEditorActionListener({
        onEditorAction: function (callbackType, result){

            console.log("PAST IF");
            if(result==android.view.inputmethod.EditorInfo.IME_ACTION_SEND){
                console.log("WORKING");
                console.log("CALL BACK " + callbackType)
            }
            console.log("CALL BACK " + callbackType);
            return true;
        }
    }));
    console.log("CALL BACK ");
}

Любая помощь будет отличной, яЯ заблудился относительно того, почему он это делает.

1 Ответ

0 голосов
/ 10 октября 2018

Основные модули NativeScript покрывают большинство для вас, поэтому вам не нужно писать собственный код для всего, кроме особых случаев.Это означает, что у вас есть событие returnPress , которое вызывается при нажатии клавиши возврата (кнопка ввода или отправки на основе вашего returnKeyType ), которую вы можете прослушать и отправить свое сообщение.

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