android - 从语言环境代码中获取国家和语言
问题描述
我有一个 android 方法,可以输出设备中可用的语音识别的所有语言代码。问题是它返回诸如“en-US”、“es-ES”、“es-MX”之类的代码......我想知道是否有办法将这些代码转换为语言的显示名称(英语(美国),西班牙语(西班牙)...)。谢谢您的帮助。
@Override
public void onReceive(Context context, Intent intent)
{
Bundle results = getResultExtras(true);
if (results.containsKey(RecognizerIntent.EXTRA_LANGUAGE_PREFERENCE))
{
languagePreference =
results.getString(RecognizerIntent.EXTRA_LANGUAGE_PREFERENCE);
}
if (results.containsKey(RecognizerIntent.EXTRA_SUPPORTED_LANGUAGES))
{
supportedLanguages =
results.getStringArrayList(
RecognizerIntent.EXTRA_SUPPORTED_LANGUAGES);
}
for(int i=0;i<supportedLanguages.size();i++){
System.out.println("The language supported is: "+supportedLanguages.get(i));
}
}
解决方案
从 ISO 语言代码的数据源构建字典:
推荐阅读
- primeng - Primeng 多选需要带有“全选”文本的全选复选框
- firebase - 如何使用 ML Kit 云文本识别器进行颤振?
- ruby-on-rails - 如何验证文件以在 ruby 或 ruby on rails 中检查多个扩展名
- r - 使用 as.data.frame 形成数据帧时删除 0
- html - 有没有办法使这些列表元素大小相同?
- unit-testing - Tessy 中的序言/结语是什么?
- vue.js - 将参数传递给 v-dialog 而不是路由
- java - 查找特征文件中没有步骤方法定义的所有步骤?
- r - 在 R 的传单中为 fitBounds 添加填充
- python - 当数据框既是 int 又是字符串时,在 Dataframe 中查找行?