BugDay(第二期)| 这种情况下,换行符不能直接使用!

BugDay(第二期)| 这种情况下,换行符不能直接使用!

换行符问题


对于包含换行符\n的字符串,TextView控件在XML布局文件添加 android:text"属性或者在java代码中使用 setText() 方法为其设置文本内容,在设备中显示时都能够正常换行。

但是将其包装到实体类VersionInfo中的某个String类型的字段updateContent中时,再调用 setText(versionInfo.getUpdateContent())方法将无法实现换行效果,换行符将像正常字符一样显示在文本控件中。

试想一下,既然在程序运行时TextView显示了换行符字符串“\n”,一定是赋值了“\n”,Android系统自动添加了一个反斜线“\”,起转义功能的作用。

这种情况出现的场景有如下两种:第一种,通过网络接口获取的包含换行符“\n”的Json数据在app里转化为Java里面的实体类;第二种,通过Intent传递包含换行符“\n”数据的序列化实体类。经过上述两种情景处理,实体类里的换行符被转换为“\n”,再赋值给TextView显示时,便会出现换行符不能正常换行的问题。

解决办法就是在将实体类包含换行符的字段赋值给TextView显示前,使用一个临时字符串变凉将“\n”转换回来,变成“\n”,再将临时字符串重新赋值给实体类的相应字段即可,比如:

BugDay(第二期)| 这种情况下,换行符不能直接使用!

BugDay  一天少一点Bug  

BugDay是[技术鸟]公众号新开启的Android开发系列文章,致力于纪录每天编程工作中遇到并解决的实际问题,以最精炼的语言,集火于最核心的问题,真正地实现[Mark,一天少一点Bug]的编程梦想。

友情推荐

FRIENDLY

专注程序员的编程知识,原创教程,最新动态等。现在是编程的黄金时代,是程序员的ShowTime。我们不是码农,不是屌丝,也不是程序猿,我们是程序员联盟

微信ID:ProgrammerLeague

BugDay(第二期)| 这种情况下,换行符不能直接使用!

热门精选

☞ 儿童节专场|送给程序员的礼物,还有比这更合适的吗

☞ 这一行做久了,码农气息就无处不在了

☞  如何向外行解释产品经理频繁更改需求为什么会令程序员烦恼?

☞ 女程序员做了个梦,各路大神惊现神级评论!

☞ 攻下隔壁女生路由器后,我都做了些什么

BugDay(第二期)| 这种情况下,换行符不能直接使用!

BugDay(第二期)| 这种情况下,换行符不能直接使用!

阅读原文 查看【更多精彩】!

BugDay(第二期)| 这种情况下,换行符不能直接使用!

相关文章:

  • 2021-08-26
  • 2021-10-20
  • 2021-10-29
  • 2021-11-18
  • 2022-12-23
  • 2021-06-20
  • 2021-12-05
  • 2022-12-23
猜你喜欢
  • 2021-12-04
  • 2021-10-20
  • 2021-11-14
  • 2021-11-05
  • 2021-11-20
  • 2022-12-23
相关资源
相似解决方案