android:singleLine="true" 跟maxLines="1"是不同的

前几天遇到一个Bug,TextView显示“我和我的小伙伴们都惊呆了” 时只能显示到”我和我的小伙伴们都惊呆”,少显示了几个字但却未显示省略号。


android:singleLine="true" 跟maxLines="1"是不同的

显示错误时

最终发现将maxLines=”1” 改成singleLine = “true”就显示正常了。。。


android:singleLine="true" 跟maxLines="1"是不同的

正常显示时

最坑的地方在于,你使用singleLine = “true” 的时候会提示你这个属性已经过时了,推荐使用maxLines=”1” 来替代它。
会让你感觉singleLine=”true” 等同于maxLines=”1”,但实际上这两个是有区别的,具体的区别可以去看TextView的源码。