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 ...
随机推荐
- Gitlab部署
前言 因部门业务整顿,需将原有的多部门共用的Gitlab环境遗弃,新建部门独立的Gitlab环境! 安装 CE版本安装操作:https://about.gitlab.com/install/#cent ...
- Prezento – 轻量、简单的 jQuery 幻灯片插件
Prezento 是一个超级简单的 jQuery 幻灯片插件.可以让你网页以新颖的交互方式呈现.另外,Prezento 支持响应式设计,配置项也很灵活,可以根据你需要的效果配置. 您可能感兴趣的相关文 ...
- Python中crypto模块进行AES加密和解密
#coding: utf8 import sys from Crypto.Cipher import AES from binascii import b2a_hex, a2b_hex class p ...
- php 获取压缩包名
参考链接: https://segmentfault.com/q/1010000000721799 通过curl方式获取压缩包名: function getFile($url, $save_dir = ...
- JavaScript学习 - 基础(四) - 控制语句/异常处理
控制语句 if-else 语句 <script> //控制语句 //if-else格式: var x = 1 if(x==1){ console.log("this is if& ...
- 2018-2019-2 网络对抗技术 20165230 Exp4 恶意代码分析
目录 1.实验内容 2.实验过程 任务一:系统运行监控 每隔五分钟记录自己的电脑,并进行分析 安装配置sysinternals里的sysmon工具 任务二:恶意软件分析 静态分析工具 ViruScan ...
- 实验一 Java开发环境的熟悉--20165221
实验报告封面 课程:Java程序设计 班级:1652班 姓名:谭笑 学号:20165221 成绩: 指导教师:娄嘉鹏 试验日期:2018.4.2 实验组次:21 预习程度:已预习 实验时间:15:35 ...
- 为什么用pycharm在同目录下import,pycharm会报错,但是实际可以运行?
问题已经找到了,pycharm不会将当前文件目录自动加入自己的sourse_path.右键make_directory as-->sources path将当前工作的文件夹加入source_pa ...
- Ubuntu/Debian 微信安装
1. 更新系统 $ sudo apt-get update $ sudo apt-get install git-core curl build-essential openssl libssl-de ...
- SpringBoot集成SpringCloud
(1).新建一个普通Maven项目,用于存放一些公共服务接口及公共的Bean等. 项目结构: 公共Bean: package cn.coreqi.entities; import java.io.Se ...