Android 需要更改TextView的帮助吗

Android 需要更改TextView的帮助吗,android,textview,multilingual,Android,Textview,Multilingual,我正在尝试为TictaToe游戏动态更改文本 leTexte = (TextView) findViewById(R.id.text); 我想在屏幕上显示一个将要更改的文本视图,例如,如果玩家X赢了游戏,将显示“玩家X赢”,或法语的“Jouer X gagne” 对我来说,通过使用 leTexte.setText("Player X Won"); 但是我想将我的XML文件用于许多其他语言。这里是主XML的一个示例 android:id="@+id/text" android:text

我正在尝试为TictaToe游戏动态更改文本

leTexte = (TextView) findViewById(R.id.text);
我想在屏幕上显示一个将要更改的文本视图,例如,如果玩家X赢了游戏,将显示“玩家X赢”,或法语的“Jouer X gagne”

对我来说,通过使用

leTexte.setText("Player X Won");
但是我想将我的XML文件用于许多其他语言。这里是主XML的一个示例

  android:id="@+id/text"
  android:text="@string/text" 
而english 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>
//开始时什么都没有
玩家X赢了
球员O赢了!
领带
轮到你了

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

您可以参考strings.xml中的字符串,如下所示

 tv.setText(R.string.text);
在代码中:使用R类的子类中的静态整数,例如:

R.string.text

字符串是资源类型,文本是资源名称


有关详细信息,请访问。

您可以参考strings.xml中的字符串,如下所示

 tv.setText(R.string.text);
在代码中:使用R类的子类中的静态整数,例如:

R.string.text

字符串是资源类型,文本是资源名称


更多详细信息请参见。

在这个世界上,如果没有
getResources(),就无法获取字符串名称。getString(id)
您是在建议您不能以这种方式设置文本吗?我还没有找到任何像setText这样的方法来访问整数检查此msgTextView.setText(R.string.hello_消息);在您刚才提供的链接中,@Raghunandan的答案是正确的,请使用
TextView.setText(intresid)
直接从您的代码中,您所需要的只是在
res/values
res/values fr
res/values de
中为每种语言指定每个字符串,并且它们应该使用相同的
android:name
value声明。在这个世界上,没有
getResources().getString>就不可能获得字符串名称(id)
你是说不能这样设置文本吗?我还没有找到任何像setText这样的方法,可以访问integer检查这个msgTextView.setText(R.string.hello_消息);在你刚才提供的链接中@Raghunandan的答案是正确的,请使用
TextView.setText(int resId)
直接从您的代码中,您只需在
res/values
res/values fr
res/values de
中为每种语言指定每个字符串,并且它们应该使用相同的
android:name
值声明