作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想将 TextView
组件的文本更改为我已在 strings.xml
中创建的另一个文本。应用启动时,显示的文本存储在 strings.xml
中,名称为“help0”。我想以编程方式将其设置为名称“help00”下的字符串,方法是在名称的 和 处放置另一个“0”。到目前为止我已经编写了这段代码:
String help = "0";
help = help + "0";
final TextView help = (TextView) findViewById(R.id.help);
help.setText("@string/help" + help);
但是,当我运行应用程序时,文本更改为“@string/help00”,而不是我在 strings.xml
中的 help00 下存储的文本。
如何解决这个问题?
最佳答案
因为您已将字符串资源 id 与普通字符串 help
连接起来,所以它作为 String
工作。您必须从 android 资源获取第一个资源字符串,然后需要与本地字符串变量连接,例如,
help.setText(getResources().getString(R.string.help)+help);
正如我怀疑的,如果您正在寻找动态字符串 id,您希望字符串资源 id 已存在 id 并附加“0”,然后使用从字符串获取 int 资源 id..
int resourceId = this.getResources().getIdentifier("@string/help" + help, "string", this.getPackageName());
然后
help.setText(resourceId);
关于java - 如何将 TextView 的文本设置为字符串资源? (适用于安卓的Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28504673/
我是一名优秀的程序员,十分优秀!