Android ID中的getString()引发资源$NotFoundException异常
我试图将字符串id从一个方法发送到另一个方法,但当我尝试getString()获取该值时,我得到一个Resources$NotFoundException异常 获取字符串的方法:Android ID中的getString()引发资源$NotFoundException异常,android,android-resources,Android,Android Resources,我试图将字符串id从一个方法发送到另一个方法,但当我尝试getString()获取该值时,我得到一个Resources$NotFoundException异常 获取字符串的方法: private static int getDefaultPropertyStringId(SettingsPropertyType settingsPropertyType, Context context) { int stringId; switch (settingsProperty
private static int getDefaultPropertyStringId(SettingsPropertyType settingsPropertyType, Context context) {
int stringId;
switch (settingsPropertyType) {
case START_UP_SCREEN:
stringId = R.string.settings_start_screen_map;
break;
case MAP:
stringId = R.string.settings_map_normal;
break;
case REFRESH_TIME:
stringId = R.string.settings_refresh_time_every_minute;
break;
case DISTANCE_UNIT:
stringId = R.string.settings_distance_units_meters;
break;
default:
stringId = R.string.default_settings;
break;
}
return stringId;
}
如果使用返回值生成get字符串,则可以从字符串资源中获取值:
当我尝试从首选项获取值时,会调用此方法,但它不存在。我得到的值是默认值。但如果我尝试在调用getDefaultPropertyStringId()的方法中获取默认值,则会出现错误:
getDefaultPropertyStringId()return中的id与调用方法中的id相同,但当我尝试获取字符串时,会出现错误
有人知道为什么会这样吗
其中的一部分,有人知道我在哪里可以将id与字符串关联吗?任何我能把它们联系起来的文件
感谢您在android Studio中,从文件->无效缓存/重新启动 像这样拿绳子
stringId = getResources().getString(R.string.settings_start_screen_map);
错误是我从Shared获取的字符串id来自strings.xml中的已删除字符串,导致应用程序崩溃。尝试context.getResources().getString(id);添加context.getResources().getString(id)会引发相同的错误在您如何调用
getDefaultPropertyStringId
methodVarad的代码后,我调用getDefaultPropertyStringId的代码位于第二个imageInvalidates缓存中,会引发相同的错误。至于更改代码以返回字符串而不是id,我首先想知道为什么我无法从具有相同id的方法中获取字符串。您想要字符串或id是什么?获取id后再使用它。对于id,您必须获得如下R.string.settings\u start\u screen\u map无效缓存为我工作+1.