小编典典

Android Java文本到语音查看额外的字符串信息

java

我已经遍历了许多可用于Android的文本到语音示例,但我认为确实很简单,但是我无法终生解决!

我只是希望能够查看EXTRA_AVAILABLE_VOICES的输出(例如),该输出根据此链接在ArrayList中返回。关于如何以编程方式处理此类输出的示例很多,但是为了我的学习和理解,我希望自己查看实际返回的数据。

我的项目完全按照此处的android开发人员示例进行设置

    // We now return the list of available and unavailable voices
    // as well as the return code.
    Intent returnData = new Intent();
    returnData.putStringArrayListExtra(
            TextToSpeech.Engine.EXTRA_AVAILABLE_VOICES, available);
    returnData.putStringArrayListExtra(
            TextToSpeech.Engine.EXTRA_UNAVAILABLE_VOICES, unavailable);
    setResult(result, returnData);
    finish();
}

理想情况下,我希望在字符串中的简单TextView中的“常量值”之后显示输出,但是我无法实现这一点,尽管我付出了很多努力,也无法在ListView中获取它……请有人帮我解决这个问题!

一旦知道了如何查看返回的数据,便可以继续遵循如何正确处理数据的示例。

  • 我没有包含任何我已经尝试过的代码,因为我在任何地方都找不到示例,而且纯粹是猜测工作(我很尴尬地展示!)

提前致谢。


阅读 196

收藏
2020-11-30

共1个答案

小编典典

对于曾经坚持使用同一事物的任何人,我使用下面的代码,这些代码是从此处找到的示例进行编辑的:

    ArrayList<String> available = data
                .getStringArrayListExtra("availableVoices");
        Log.v("languages count", String.valueOf(available.size()));
        Iterator<String> iter = available.iterator();
        while (iter.hasNext()) {
            String lang = iter.next();
            Locale locale = new Locale(lang);
            Log.v(TAG, "language: " + lang);
            Log.v(TAG, "language locale: " + locale.toString());

            TextView LocaleResults = (TextView) getView().findViewById(
                    R.id.textViewConfig);
            LocaleResults.append("\nAvailable Engine Language: " + lang);

        }

        ArrayList<String> unavailable = data
                .getStringArrayListExtra("unavailableVoices");
        Log.v("languages count", String.valueOf(unavailable.size()));
        Iterator<String> iteru = unavailable.iterator();
        while (iteru.hasNext()) {
            String ulang = iteru.next();
            Locale ulocale = new Locale(ulang);
            Log.v(TAG, "ulanguage: " + ulang);
            Log.v(TAG, "ulanguage locale: " + ulocale.toString());

            TextView LocaleResults = (TextView) getView().findViewById(
                    R.id.textViewConfig);
            LocaleResults.append("\nUnavailable Engine Language: " + ulang);

        }
2020-11-30