【问题标题】:How to use the String resource in Java Android Studio?如何在 Java Android Studio 中使用 String 资源?
【发布时间】:2018-07-13 08:10:25
【问题描述】:

我遇到了问题,Android Studio 提醒我使用 string.xml 来设置文本。下面给了我提示:不要连接用 setText 显示的文本。将资源字符串与占位符一起使用。

public int points = 0;
public TextView tv_points;
tv_points.setText("Points: " + points);

好的,如果我在这段代码中使用字符串 xml,它不是我想要的:

<string name="points_string">Points: </string>    

public int points = 0;
public TextView tv_points;
tv_points.setText((R.string.points_string) + points);

它没有错误也没有提示,但它是错误的。我没有得到想要的效果来设置积分。

【问题讨论】:

  • 使用这个tv_points.setText(getString(R.string.points_string).concat(String.valueOf(points)));
  • String.format("");也适用于此类情况
  • 您不连接的原因是“points: 9”可能不是每种语言的正确表达方式。您希望翻译人员能够根据需要对其进行更改,其中可能包括移动元素。这比标签更适用于文本,但在这里仍然有意义。

标签: java android string android-studio android-resources


【解决方案1】:

您需要像这样使用strings.xml 格式化字符串:

&lt;string name="points_string"&gt;Points: %1$d&lt;/string&gt;

那么你可以这样使用它:

tv_points.setText(getResources().getString(R.string.points_string, points));

【讨论】:

    猜你喜欢
    • 2017-12-08
    • 2018-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-20
    • 1970-01-01
    • 2013-05-23
    • 1970-01-01
    相关资源
    最近更新 更多