有没有办法以编程方式更改R.string?因为它引发了错误。
基本上我想这样做:
grep -oP '(?<= by )[^@]*' <<< "$change"
name
因为我有根据ID更改的硬编码字符串。
我试图这样做,但没有工作:
.addAnnotation(AnnotationSpec.builder(SuiteClasses.class)
.addMember("value", "$T.class", testClasses.toArray()).build())
答案 0 :(得分:5)
R.string.xxx实际上是一个常量,并且无法追加该值,永远不会找到该资源。您可以搜索R.java以查看应用的值:
public static final class string {
public static final int about_open_source_heading=0x7f060013;
public static final int about_open_source_list=0x7f060014;
}
如果你有依赖于特定值的硬编码字符串,也许你可以这样做:
switch ( id ) {
case 12345:
parkAddr = R.string.stg_ParkAddress_12345;
break;
case 12346:
parkAddr = R.string.stg_ParkAddress_12346;
break;
}
答案 1 :(得分:2)
无法在运行时更改字符串资源。您可以将该字符串保存在SharedPreference中,您可以对其进行修改和保存以供进一步使用。
答案 2 :(得分:1)
无法以编程方式编辑字符串资源,执行另一个类并将字符串放在此类中并在运行时访问。
答案 3 :(得分:0)
只需将其与tk
id