我正在尝试为TicTacToe游戏动态更改文本。
leTexte = (TextView) findViewById(R.id.text);
我想在屏幕上显示一个将要更改的TextView,例如,如果玩家X赢得游戏,将显示“玩家X赢”,或者法语中的“Joueur X gagne”。
我很容易使用
以一种语言手动完成此操作leTexte.setText("Player X Won");
但我想将我的XML文件用于许多其他语言。这里是主XML
的示例 android:id="@+id/text"
android:text="@string/text"
英语Strings.xml看起来像这样
<string name="text"></string> //nothing at start
<string name="textX">Player X Wins</string>
<string name="textO">Player O Won !</string>
<string name="textT">TIE !</string>
<string name="textU">Your Turn</string>
那么,如何使用“名称”更改文本?
答案 0 :(得分:3)
您可以在strings.xml中引用字符串,如下所示
tv.setText(R.string.text);
在代码中:使用R类子类中的静态整数,例如:
R.string.text
string是资源类型,text是资源名称。
http://developer.android.com/guide/topics/resources/accessing-resources.html的更多详情。