在XML文件的字符串中出现“Android Lint“不是有效的格式字符串错误。

4
我希望在屏幕上显示这样的标题,"高达30%的折扣"。
因此,在我的xml文件中有如下内容:<string name="title">高达%d%%折扣</string> 在代码中:mTitle.setText(getString(R.string.title, 30)); 虽然它可以正常工作并且我可以看到上面的信息,但是我得到了一个lint错误,说:

enter image description here

如何消除这个错误?


https://dev59.com/J2cs5IYBdhLWcg3wtmWf#12627660 - gaara87
人们来到这里是因为他们在使用\%%,你可以尝试通过删除反斜杠来解决这个问题,%%对我有效。 - undefined
2个回答

2
我遇到了同样的问题,并找到了解决方法: 您需要为替换字符串指定一个位置。因此,您需要使用%1$d%%来代替%d%%(%1表示位置,$d指定类型)。另外,与人们预期的相反,formatted="false"会删除警告。事实上,只有在我删除了那部分内容后,警告才消失。

0
试试这个: <string name="title">高达%1$d%%更便宜</string>


谢谢你的帮助,但我之前尝试过了,没有任何区别。基本上,当有多个参数时才使用 $1,否则没有任何区别。 - Hesam

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接