R.string android 应用上的 Resources$NotFoundException 错误

R.string Resources$NotFoundException Error on android app

我有一个多语言 android 应用..我把这个

<string name="FOOD_SUGGESTED">Top Ristoranti</string>

在 res/values-it/strings.xml

还有这个

<string name="FOOD_SUGGESTED">Top Restaurants</string>

在 res/values-en/strings.xml.

在 java 中我将此值与

一起使用
String suggested = getResources().getString(R.string.FOOD_SUGGESTED);
referenceTextView.setText("" + related.size() + " " + suggested);

有时 Android Vitals 我得到这个错误

android.content.res.Resources$NotFoundException: 
    at android.content.res.Resources.getText (Resources.java:1178)
    at android.content.res.Resources.getString (Resources.java:1224)
    at com.a70division.blink.CardViews.GenericCardView.<init>(GenericCardView.java:78)
    at com.a70division.blink.Card.getViewForCard (Card.java:190)
    at com.a70division.blink.Card.<init> (Card.java:92)
    at com.a70division.blink.Fragments.DeckFragment.createCardView (DeckFragment.java:251)
    at com.a70division.blink.Fragments.DeckFragment.nextCard (DeckFragment.java:354)
    at com.a70division.blink.Fragments.DeckFragment.access0 (DeckFragment.java:53)
    at com.a70division.blink.Fragments.DeckFragment.run (DeckFragment.java:429)

看不懂哪里错了

有人可以帮助我吗?

确保您已将该资源也添加到根路径下:res/values/strings.xml。如果不这样做,如果设备的语言不是英语 (en) 或意大利语 (it),您的应用程序将会崩溃。

此外,我建议您以小写形式定义资源 ID(这只是为了命名约定):

<string name="food_suggested">Top Restaurants</string>

最后,确保您的字符串资源包含在 <resources> </resources> 标签之间,这是强制性的:

<resources>
    <string name="food_suggested">Top Restaurants</string>
</resources>

请将您的字符串名称从大写字母更改为小字符。

喜欢

<string name="food_suggested">Top Ristoranti</string>
<string name="food_suggested">Top Restaurants</string>

String suggested = getResources().getString(R.string.food_suggested);

请尝试这种方式,并让我们知道您的反馈。希望这会奏效。