0

我正在尝试为井字游戏动态更改文本。

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>

那么,如何使用“名称”更改文本?

4

1 回答 1

3

您可以在 strings.xml 中引用字符串,如下所示

 tv.setText(R.string.text);

在代码中:使用 R 类的子类中的静态整数,例如:

字符串文本

string 是资源类型,text 是资源名称。

更多详细信息,请访问http://developer.android.com/guide/topics/resources/accessing-resources.html

于 2013-04-05T17:33:16.357 回答