android 文本的对齐方式一直比较简陋,只有左、右、居中三种对齐方式。当使用左对齐时,英文单词常常会出现整个单词重开一行的情况,这样右边就会参差不齐。
对此,网上的建议大多数都是提供重写TextView的方案,或者使用WebView来加载富文本。这些方案网上很多,此处不再赘述。
这里给大家提供一个额外的处理思路。TextView其实是存在两端对齐的属性可以直接用的,那就是:android:justificationMode="inter_word"
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Minim consequat do et et qui ad qui Lorem proident proident. Lorem irure cupidatat fugiat laboris. "
android:justificationMode="inter_word"
android:gravity="left"/>
需要注意,此属性只在android 8.0以上生效,但是就目前的android生态来看,android版本普遍都是很高的,所以并不用太担心此问题。
不过至于效果嘛,肯定是不如自定义控件的美观,但是胜在简单。如果只是临时解决一下,还是很方便的。