【xml String format】error: Multiple substitutions specified in non-positional format;
16lz
2021-01-26
今天大篇的粘贴arrays.xml中出现了这个问题:
Typeerror:
Multiple substitutions specified in non-positional format; did you mean to add the formatted="false" attribute?
对应的代码是:
<string name="template_user_agent">"%s/%s (Linux; Android)"</string>
解决办法是:
1 使用%%或\%,如:
<string name="template_user_agent">"%%s/%%s (Linux; Android)"</string>
2 添加 formatted="false" 属性
<string name="template_user_agent" formatted="false">"%s/%s (Linux; Android)"</string>
这个错误和ADT的版本有关,旧版本不会出现这个提示。
更新修正:
用上面两种方法,会使得字符串丧失格式化的能力(比如使用 getResource().getString(String,Object...)这个方法),保持格式化字符串的做法,可参考:http://blog.csdn.net/ganggang1st/article/details/6804086,修改如下:
<string name="template_user_agent" formatted="false">"%1$s/%2$s (Linux; Android)"</string>
更多相关文章
- Android基础部分填坑
- Android基础之异步消息处理机制
- Android(安卓)NDK开发之旅37--FFmpeg转码压缩
- Android(安卓)TextView长按复制的实现方法
- IntentService解析
- Android(安卓)self_adaption of screen
- 使用Android(安卓)Camera2 API获取YUV数据
- sqlite 中判断某个表是否存在的方法
- Android导入项目出现“R cannot be resolved to a variable"错误