android 换行符(\n) 在TextView中显示不正常的问题
在Android开发,使用TextView设置换行的时候,会有这种情况:
1、如果直接在XML文件中写入"aaaaa\nbbbb"可以换行,显示为:
aaaaa
bbbbb
2、在Java文件中用textViewObj.setText("aaaa\nbbbb")也可以换行,显示为:
aaaaa
bbbbb
3、将“aaaaa\nbbbb”封装到一个类中的某个String类型的属性中时,在Java代码中使用textView.setText(该类的对象名.属性名)。显示为:
aaaaa\nbbbb
上面第3点就是问题所在,不能正常换行。
问题分析:
很简单,在程序运行的时候显示为“aaaa\nbbbb”,那么必须对TextView设置了“aaaa\\nbbbb”,
这里多了一个“\”, 对象所携带的字符串的转义已经被消除了,
通过以下的方法传递一个对象之后, 如果这个对象包含了字符串成员变量, 那么, 这个字符串所包含的转义字符将失效. 因为android已经在传递时做了手脚.
intent.putExtra(EXTRA_OBJECT,People);
比如传递一个People对象, 它有一个详细描述这个People的成员变量Description,
而这个Description成员, 是包含了"\n"转义字符的字符串,那么它在传递的时候,
它的转义字符"\n"已经变成"\\n"了,
所以, 我们要做的是,在对象传递完之后, 把它转换过来.
People people= (People) intent.getSerializableExtra(EXTRA_OBJECT);
String temp = people.getDescription().replace("\\n", "\n");
people.setDescription(temp);
这样一来, 再放到TextView上,就可以正常显示换行了。
android 换行符(\n) 在TextView中显示不正常的问题的更多相关文章
- 我的Android进阶之旅------> Android在TextView中显示图片方法
面试题:请说出Android SDK支持哪些方式显示富文本信息(不同颜色.大小.并包括图像的文本信息).并简要说明实现方法. 答案:Android SDK支持例如以下显示富文本信息的方式. 1.使用T ...
- 我的Android进阶之旅------> Android在TextView中显示图片方法
面试题:请说出Android SDK支持哪些方式显示富文本信息(不同颜色.大小.并包含图像的文本信息),并简要说明实现方法. 答案:Android SDK支持如下显示富文本信息的方式. 1.使用Tex ...
- 将html中的br换行符转换为文本输入中的换行符(转)
PHP中的有个非常好的函数:nl2br(),将文本框中的换行转换为HTML页面的<br />,但是如何实现将html中的<br />换行符转换为文本框中的换行符呢?下面这几个方 ...
- php函数nl2br的反函数br2nl 将html中的br换行符转换为文本输入中的换行符
下面这几个方法将能够帮你解决这个问题. PHP版将html中的<br />换行符转换为文本框中的换行符: 代码如下: function br2nl($text){ return preg_ ...
- 换行符javajava去除字符串中的空格、回车、换行符、制表符
在改章节中,我们主要介绍换行符java的内容,自我感觉有个不错的建议和大家分享下 每日一道理 只有启程,才会到达理想和目的地,只有拼搏,才会获得辉煌的成功,只有播种,才会有收获.只有追求,才会 ...
- Android TextView中显示图片
Android官方给我们提供的Html类下面的fromHtml方法 当你需要转换的HTML代码是带图片的,比如<IMG/>,那么你就需要使用到重载的第二个方法了,这个方法里面有个Image ...
- TextView中显示链接 定义颜色
<TextView android:id="@+id/textView" android:layout_width="match_parent" andr ...
- 换行符java去除字符串中的空格、回车、换行符、制表符
import java.util.regex.Matcher; import java.util.regex.Pattern; /** * @author lei * 2011-9-2 */ publ ...
- 我的Android进阶之旅------> Android为TextView组件中显示的文本添加背景色
通过上一篇文章 我的Android进阶之旅------> Android在TextView中显示图片方法 (地址:http://blog.csdn.net/ouyang_peng/article ...
随机推荐
- JavaScript基本操作之——九个 Console 命令
一.显示信息的命令 console.log('hello'); console.info('信息'); console.error('错误'); console.warn('警告'); 二.占位符 c ...
- linux的基本操作与常见命令
linux的基本操作与常见命令: jdk的安装: 步骤:(特别注意:虚拟机安装的一般是32位的操作系统,jdk也必须使用32位的) 查看虚拟机版本:sudo uname --m i686 //表示是3 ...
- html接收参数
代码 <!DOCTYPE html> <html> <head> <title>html接收参数</title> </head> ...
- 通过read()读文件
一.在POSIX中的定义 #include <unistd.h> ssize_t read(int fd, void *buf, size_t len); 二.调用read()的可能结果 ...
- C# unicode 转中文
//Unicode 转中文 private void button1_Click(object sender, EventArgs e) { string unicode = @"\U5fa ...
- 线程异步操作,更新其中一个报错不影响另一个的运行(Task )
//子系统同步更新 BD001_BLL bll = new BD001_BLL(); List<BD001_Model> lis ...
- jdk学习之如何调试jdk
自从sun被oracle收购后,在oracle下载的jdk使用F5进入调试jdk的方法就不行了,这对于想看jdk的源码的小伙伴是一个暴击(oracle在编译rt.jar时去除了调试信息): 这不得不鼻 ...
- Linux之Ubuntu下如何查看已安装的软件/库文件【摘抄】
本文属于实用性质,且属于摘抄别处,出自:[Ubuntu 下如何查看已安装的软件](http://blog.csdn.net/m1205979825/article/details/40855583) ...
- 基于Python的机器学习实战:KNN
1.KNN原理: 存在一个样本数据集合,也称作训练样本集,并且样本集中每个数据都存在标签,即我们知道样本集中每一个数据与所属分类的对应关系.输入没有标签的新数据后,将新数据的每个特征与样本集中数据对应 ...
- 【比赛游记】NOIP2018游记
往期回顾:[比赛游记]NOIP2017游记 转眼间又过去了一年,当年还是初中生的我已经摇身一变成为了AHSOFNU的高一学生. 回顾这一年我好像也没学什么新东西,要说有用的可能就无旋Treap吧,不知 ...