我有一个带有两个占位符的字符串,带有XML:
<string name="message">%1$s informs that %2$s is not feeling well today.</string>
因为%2$s
是&#34;他&#34; 或&#34;她&#34; ,当翻译成葡萄牙语时,我们应该只有第一个占位符,即一个人的名字:
<string name="message">%1$s informa que não se sente muito bem hoje.</string>
代码编译并正常工作,但Lint抱怨 String.format字符串与XML格式字符串不匹配
处理这种情况的最佳方法是什么?
答案 0 :(得分:2)
Lint会抱怨,因为它正在寻找第二个参数。 你可以把你的占位符放在代表他和她的两个词的位置,并保持两个含义相同。或者,如果他和她没有这个语言的单词,只需将占位符保留在那里并用空白字符串替换它。
答案 1 :(得分:2)
<string name="message">%1$s informa que não %2$s sente muito bem hoje.</string>
让%2$s
成为“se”和......“se”:)