如何在Constraint Layout中让多行TextView的文字垂直居中?
整理后的TextView代码实现
先把你的TextView代码完整格式化出来,方便查看和复用:
<TextView android:id="@+id/textView4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="16dp" android:layout_marginStart="16dp" android:layout_marginEnd="16dp" android:layout_marginBottom="16dp" android:lines="3" android:singleLine="false" android:text="TextView" android:textAlignment="center" android:textColor="@android:color/background_light" />
关键属性解读
android:lines="3":强制TextView固定占用3行的高度空间,哪怕文本内容不足3行也会保留空白行;如果内容超出3行,默认会直接截断,要是需要显示省略号,可以额外加上android:ellipsize="end"属性。android:singleLine="false":明确允许文本自动换行,和android:lines="3"搭配,能让文本在限定的3行范围内正常换行展示。android:textAlignment="center":让文本在TextView内部水平居中,配合wrap_content的宽高设置,TextView会自动适配文本宽度,同时保持居中对齐效果。- 四边的
16dp外边距:让TextView和父布局、周边控件保持统一的间距,避免界面元素挤在一起,提升整体美观度。
另外你提到已经按图添加了约束,在ConstraintLayout里这类约束能确保TextView在不同屏幕尺寸下都保持稳定的位置,比如固定到父布局四边或者和其他控件建立位置关联,有效避免布局错乱问题。
内容的提问来源于stack exchange,提问作者Andro Dev
相关产品推荐
相关产品推荐

