【发布时间】:2021-02-25 22:26:42
【问题描述】:
我正在 Android Studio 中使用 Java 编程。
我就是不明白,为什么会这样:
我的setText() 方法的结果总是一样的:“0”显示为按钮文本。
我的按钮的setText方法:
button_adj1.setText(String.valueOf(getResources().getIdentifier("adj"+ counter,"String", getPackageName())));
计数器变量正常工作并在单击后递增,这应该会在第二次单击时提取counter+1 项。
如果我用例如替换counter 3,结果也是0。
硬编码尝试:
button_adj1.setText(String.valueOf(getResources().getIdentifier("adj"+ 3,"String", getPackageName())));
资源文件:res/strings.xml:
<string name="adj1">Test0</string>
<string name="adj2"Test1</string>
<string name="adj3">Test2</string>
<string name="adj4">Test3</string>
<string name="adj5">Test4</string>
<string name="adj6">Test5</string>
<string name="adj7">Test6</string>
<string name="adj8">Test7</string>
<string name="adj9">Test8</string>
<string name="adj10">Test</string>
还有其他可能的方法吗?
我以为String.valueOf 正在将getResources.getIdentifier 的结果转换成字符串?
【问题讨论】:
-
这能回答你的问题吗? java android getResources().getIdentifier()
-
感谢您的建议。下面的解决方案适用于这种情况
标签: java android android-resources android-button