android xml转义符
2017-02-09 16:24
204 查看
如果一段文字需要多个TextView拼贴,比如:“我叫XXX,今年XX岁了,身高X.X米”;
可以考虑引用string.xml文件中预定义的字符串拼接实现.
例子:
1.在string.xml中先定义好格式
<string name="hello">String.xml字符转义拼接: 我叫 %1$s,今年 %2$d岁了,身高 %3$f米。</string>
2.代码中这样实现
TextView tv=(TextView)findViewById(R.id.textView);
String format = getResources().getString(R.string.hello);
String result= String.format(format , "Android"
, 5 , 2.46 );//对应xml中定义的123顺序
Log.e("", result);
tv.setText(result);
----------
输出结果如下:
String.xml字符转义拼接: 我叫 Android,今年 5岁了,身高 2.460000米.
--------------------------------------------------
特别注意:
在string.xml中无法直接写成 %d,%s,%f 等这类格式化符号,必须在中间加个转义符"$",而不是平时常用的转义符"\"
---新增,网上找的---
如何在<string></string>中使用%号:
有两个办法可供选择
1.用%%来表示1个%,和转意符号 \ 的用法相同.(但我经我测试发现无效,编译不报错,但输出结果是两个%)
2.如果你的字符串不需要格式化,可以在你的<string 标签上增加一个属性:formatted="false"例如 <string name="test" formatted="false">% test %</string> 即可.
--------------------------------------------------------------------------------------
另外附送一些搜到的特殊转义符:
XML转义字符
以下为XML标志符的数字和字符串转义符
" (" 或 ")
' (' 或 ')
& (& 或 &)
lt(<) (< 或 <)
gt(>) (> 或 >)
下面的字符在 [XML]中被定义为 空白(whitespace)字符:
空格 ( )
Tab ( )
回车 ( )
换行 ( )
可以考虑引用string.xml文件中预定义的字符串拼接实现.
例子:
1.在string.xml中先定义好格式
<string name="hello">String.xml字符转义拼接: 我叫 %1$s,今年 %2$d岁了,身高 %3$f米。</string>
2.代码中这样实现
TextView tv=(TextView)findViewById(R.id.textView);
String format = getResources().getString(R.string.hello);
String result= String.format(format , "Android"
, 5 , 2.46 );//对应xml中定义的123顺序
Log.e("", result);
tv.setText(result);
----------
输出结果如下:
String.xml字符转义拼接: 我叫 Android,今年 5岁了,身高 2.460000米.
--------------------------------------------------
特别注意:
在string.xml中无法直接写成 %d,%s,%f 等这类格式化符号,必须在中间加个转义符"$",而不是平时常用的转义符"\"
---新增,网上找的---
如何在<string></string>中使用%号:
有两个办法可供选择
1.用%%来表示1个%,和转意符号 \ 的用法相同.(但我经我测试发现无效,编译不报错,但输出结果是两个%)
2.如果你的字符串不需要格式化,可以在你的<string 标签上增加一个属性:formatted="false"例如 <string name="test" formatted="false">% test %</string> 即可.
--------------------------------------------------------------------------------------
另外附送一些搜到的特殊转义符:
XML转义字符
以下为XML标志符的数字和字符串转义符
" (" 或 ")
' (' 或 ')
& (& 或 &)
lt(<) (< 或 <)
gt(>) (> 或 >)
下面的字符在 [XML]中被定义为 空白(whitespace)字符:
空格 ( )
Tab ( )
回车 ( )
换行 ( )
& 或 & | & | 和 | |
< 或 < | < | 小于号 | |
> 或 > | > | 大于号 | |
" | " | 双引号 | |
| | 空格 | |
© | © | 版权符 | |
® | ® | 注册符 |
相关文章推荐
- 体验Android
- Android源码各个击破之-系统属性
- Study on Android【一】--概述
- 机器人Android在呼唤!
- Google Android IDE-eclipse plugin 预览
- 为什么是java,google的android策略
- Android Developer Challenge
- Google Calling: Inside Android, the gPhone SDK
- Android程序开发初级教程(三)
- Android程序开发初级教程(二)
- 什么是google的Android操作系统?
- Google手机操作系统Android应用开发入门
- Android程序开发初级教程(一)
- Android 入门开发指南之一 -- Android简介
- Android 原代码下载路径
- 体验Android:个人所得税计算器 含源码
- Android判断字符串中是否含字母、中文或数字
- 体验Android
- Google 1000万美元重奖Android开发者
- Android安装以及Eclipse插件(Google Android) ,在Android 中google搜索 博客园界面