天天看点

android string.xml 转译、特殊字符问题

在编辑 string.xml 文件的时候,字符之间的空格用 space 键是能显示出效果的的,但是字符后面如果需要添加空格,直接 space 键是不管用的,此时 空格应该用  来表示;

如:

<string name="score">score :  </string>  ======》 这样就能显示出冒号后面的 空格

http://lanyan-lan.iteye.com/blog/1561500

xml转义字符 

以下为xml标志符的数字和字符串转义符 

"     (" 或 ") 

'     (' 或 ') 

&     (& 或 &) 

lt(<) (< 或 <) 

gt(>) (> 或 >) 

如题: 

比如:在string.xml中定义如下一个字符串, 

<string name="first">大家好,欢迎来到eoeandroid社区。welcome to here!</string> 

我想以 

大家好,欢迎来到eoeandroid社区。 

welcome to here! 

两行的形式输出,如何做?加\n,看下面: 

<string name="hello">大家好,欢迎来到eoeandroid社区。\nwelcome to here!</string> 

android中的空格编码 string.xml前后加空格的技巧 

<string name="space">    我来看空格</string> 

  这个就代表着空格 

1. 遇到如下错误的时候说明你需要在单引号签名加转义字符(\): 

description resource path location type error: apostrophe not preceded by \ (in search' titles) strings.xml 

只要将定义的字符串中的单引号('), 修改为(\')即可 

2. 变量文本格式(%s)提示: 

multiple annotations found at this line: 

- error: multiple substitutions specified in non-positional format; did you mean to add the formatted="false" 

attribute? 

- error: unexpected end tag string 

这是由于新的sdk(虽然从没用过老的)采用了新版本的aapt(android项目编译器), 这个版本的aapt编译起来会比老版本更加的严格, 在android最新的开发文档中描述string的部分,已经说明了如何去设置 %s 等符号, 可以点击去看. 

简单解决方法就是:把%s之类的变量格式替换成%1$s, %1表示第一个位置的变量, $s表示为字符串类型 

例如: 

<string name="welcome_messages">your first var is %1$s! you second var is %2$d.</string> 

http://songfantasy.iteye.com/blog/1562029