Android:通过字符串值查找字符串资源键
Android: Find the string resource key by the string value
关于如何通过键检索字符串资源值,有很多解释。但我实际上需要相反情况的解决方案——通过值检索密钥。
您可能想知道为什么我会需要这样的东西。好吧,我在我的应用程序中获得了语音识别功能,如果输入的不是英语,我需要从原始语音到文本输入中恢复本地化的字符串键,这样我的应用程序就可以支持多语言语音识别。
假设我有一个字符串资源:
// EN
<string name="not_a_dog">Cat</string>
// DE
<string name="not_a_dog">Katze</string>
因此,如果用户说 "Cat"(或德语语言环境为 "Katze"),我会得到 "not_a_dog"。
您不需要为不同的语言声明多个字符串
只需为描述的每种语言创建 string.xml
here;那么你可以这样做:if(yourText.equals(getString(R.string.not_a_dog)){
//do what you want
}
关于如何通过键检索字符串资源值,有很多解释。但我实际上需要相反情况的解决方案——通过值检索密钥。
您可能想知道为什么我会需要这样的东西。好吧,我在我的应用程序中获得了语音识别功能,如果输入的不是英语,我需要从原始语音到文本输入中恢复本地化的字符串键,这样我的应用程序就可以支持多语言语音识别。
假设我有一个字符串资源:
// EN
<string name="not_a_dog">Cat</string>
// DE
<string name="not_a_dog">Katze</string>
因此,如果用户说 "Cat"(或德语语言环境为 "Katze"),我会得到 "not_a_dog"。
您不需要为不同的语言声明多个字符串
只需为描述的每种语言创建 string.xml
here;那么你可以这样做:if(yourText.equals(getString(R.string.not_a_dog)){
//do what you want
}