簡體   English   中英

字符串格式參數在Android上的string.xml中不起作用

[英]String format parameter is not working in string.xml on android

在我的代碼中,我正在使用此參數將字符串參數發送到string.xml

String.format(getString(R.string.notification_devil_expire_coupon_for_one_user), "iphone", String.valueOf(loggedInUser.getExpiryReminder()));

在string.xml中,即時通訊使用此獲取參數

 <string name="notification_devil_expire_coupon_for_one_user">Do you even shop, bro? Your <xliff:g id="retailer">%s1</xliff:g> coupon expires in <xliff:g id="endDate">%s2</xliff:g> days.</string>

預期產量

 Do you even shop, bro? Your iphone coupon expires in 3 days.

但我的輸出是

 Do you even shop, bro? Your iphone1 coupon expires in 32 days.

參數編號添加在字符串中。 我不知道我在代碼中哪里做錯了

字符串格式化程序將%s替換為有序列表中的值。 無需編號。 因此,與其使用%s1%s2不如在每個地方都使用%s

<string name="notification_devil_expire_coupon_for_one_user">Do you even shop, bro? Your <xliff:g id="retailer">%s</xliff:g> coupon expires in <xliff:g id="endDate">%s</xliff:g> days.</string>

對參數進行編號是一種很好的做法,因為順序可能會根據語言而變化。 如果只有一個參數是%s,則多個參數將是%1 $ s,%2 $ s等。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM