android本地化格式字符串错误

时间:2018-05-02 23:42:45

标签: java android localization

我一直在为我的Android应用程序做一些本地化翻译,我遇到了这个错误,我不知道如何解决 所以java mainActivity文件的方法看起来像这样

private String creatOrderSummary(String name, int price, boolean addWhippedCream, boolean addChocolate) {
    String priceMessage = getString(R.string.order_summary_name, name);
    priceMessage += "\nadd whipped cream? " + addWhippedCream;
    priceMessage += "\nadd chocolate? " + addChocolate;
    priceMessage += "\nQuantity : " + quantity;
    priceMessage += "\nTotal : $" + price;
    priceMessage += "\n" + getString(R.string.thank_you);
    return priceMessage;

}

并且字符串xml文件看起来像这样

<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <string name="app_name">Just Java</string>

    <string name="toppings">Toppings</string>
    <string name="thank_you">Thank you!</string>
    <string name="user_name">Name</string>
    <string name="whipped_cream">Whipped Cream</string>
    <string name="chocolate">Chocolate</string>
    <string name="quantity">Quantity</string>
    <string name="order">Order</string>
    <string name="order_summary_name">Name: <xliff:g id="name" example="Amy">%s</xliff:g></string>
</resources>

问题在于我得到的错误

  

格式字符串&#39; order_summary_name&#39;不是有效的格式字符串所以它   不应该传递给String.format

2 个答案:

答案 0 :(得分:0)

尝试getRsources()。getString(R.string.name);

答案 1 :(得分:0)

我先“清理”了项目,然后“重建”了它。

所以我做的是: 在菜单栏中(在Android Studio中),选择“构建”->“清理项目”。 之后,再次单击Build-> Rebuild Project。 完成后,运行“ app”(在Windows上为Shift + F10)。