Android:通过字符串值查找字符串资源密钥



在如何通过其键检索字符串资源值。但是我实际上需要对反向情况的解决方案 - 改用值来检索密钥。

您可能想知道为什么我需要这样的东西。好吧,我在应用程序中获得了语音识别,如果有非英语扬声器输入,我需要从原始语音到文本输入中恢复本地化的字符串键,以便我可以在应用程序中获得多语言语音识别支持。/p>

所以想象我有一个字符串资源:

// EN
<string name="not_a_dog">Cat</string>
// DE
<string name="not_a_dog">Katze</string>

所以,如果用户说" cat"(或德国语言环境的" katze"(,我会得到" not_a_dog"。

您不需要声明不同语言的变形字符串

只需为每种语言创建string.xml,如此处所述;然后您可以做:if(yourText.equals(getString(R.string.not_a_dog)){ //do what you want }

最新更新