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