【发布时间】:2017-04-26 16:25:18
【问题描述】:
我开始了一项活动。它有一个数组,我想包含我的 strings.xml 中的字符串。此外,我有一个按钮,单击该按钮会将 TextView 的文本更改为数组中的下一个元素。所以我希望在每次单击按钮后在 TextView 中更改文本。文本来自数组。但是我无法使用代码获取数组以从 strings.xml 获取字符串:
getString(R.string.word_1)
我的 strings.xml 看起来像这样:
<resources>
<string name="app_name">Name</string>
<string name="word_1">First</string>
</resources>
这个Array所在的activity有如下代码:
public class DisplayMenuActivity extends AppCompatActivity {
Button nextButton;
TextView word;
public String list[] = {getString(R.string.word_1)};
private int listNumber = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_display_menu);
//Word
word = (TextView) findViewById(R.id.word);
word.setText(list[0]);
//Button
nextButton = (Button) findViewById(R.id.nextButton);
nextButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
listNumber++;
if (listNumber >= list.length) {
listNumber = 0;
}
word.setText(list[listNumber]);
}
});
}}
例如,当我将 getString(R.string.word_1) 替换为“First”时它确实有效,但我想从 XML 文件中调用单词而不是对它们全部进行硬编码。所以问题在于从 XML 调用字符串,我在互联网上到处寻找解决方案,但它们都不起作用。任何人都知道我做错了什么?谢谢你看看谁在找。我很感激。
【问题讨论】:
标签: java android arrays xml string