Android распознаватель речи - PullRequest
0 голосов
/ 07 ноября 2018

Как добавить каждое значение speechRecognizer в EditText? Я имею в виду, когда вы можете использовать распознаватель речи после следующего вызова edittext, предыдущие значения editext удаляются, и остается только последнее значение вызова.

1 Ответ

0 голосов
/ 07 ноября 2018

Существует несколько способов реализации одного из самых простых способов сделать это следующим образом.

public void promptspeech(){
    Intent i=new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
    i.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
    i.putExtra(RecognizerIntent.EXTRA_LANGUAGE, Locale.getDefault());
    i.putExtra(RecognizerIntent.EXTRA_PROMPT,"Say Something!");
    try {
        startActivityForResult(i,VOICE_RESULT );
    }
    catch(ActivityNotFoundException a){
        Toast.makeText(this,"Sorry! Your device does not support speech Language", Toast.LENGTH_LONG).show();
    }
}

Я установил для языка значение по умолчанию, установленное на мобильных устройствах. Вы можете получить результат, переопределив метод onActivityResult .

Добавьте следующие строки кода в метод onActivityResult

if(requestCode ==VOICE_RESULT && resultCode==RESULT_OK){
        List<String> result=data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS);
        editTextRemarks.setText(result.get(0));
 }

Настроил код соответствующим образом. Надеюсь, что это поможет выполнить работу.

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