首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Android TextView对齐文本

Android TextView对齐文本
EN

Stack Overflow用户
提问于 2009-08-18 16:32:10
回答 30查看 525.4K关注 0票数 437

如何使TextView的文本对齐(文本在左右两边对齐)?

我找到了一个可能的解决方案here,但它不起作用(即使您将垂直中心更改为center_vertical,等等)。

EN

回答 30

Stack Overflow用户

回答已采纳

发布于 2009-08-18 12:33:37

我不相信Android支持完全的正当性。

安卓更新2018-01-01: 8.0+支持justification modes with TextView

票数 277
EN

Stack Overflow用户

发布于 2010-05-25 01:58:36

@CommonsWare回答正确。Android 8.0+确实支持“完全正当化”(或者简称为“正当化”,因为它有时被模棱两可地提及)。

Android还支持“左对齐/右对齐”。请参阅Justification上的维基百科文章,了解其中的区别。许多人认为“对齐”的概念包括完全对齐和左/右文本对齐,当他们想要进行左/右文本对齐时,这是他们最终要搜索的内容。此答案说明了如何实现左/右文本对齐。

可以实现左/右文本对齐(而不是完全对齐,正如问题所询问的那样)。为了演示,我将使用一个基本的两列表单(左列中的标签和右列中的文本字段)作为示例。在此示例中,左列中的标签中的文本将右对齐,以便它们与右列中的文本字段对齐。

在XML布局中,您可以通过在所有TextViews中添加以下属性来使TextView元素本身(左列)与右侧对齐:

代码语言:javascript
运行
复制
<TextView
   ...
   android:layout_gravity="center_vertical|end">
   ...
</TextView>

但是,如果文本换行到多行,文本仍将在TextView内左对齐。添加以下属性将使实际文本在TextView内右对齐(左参差不齐):

代码语言:javascript
运行
复制
<TextView
   ...
   android:gravity="end">
   ...
</TextView>

因此,属性指定如何在TextView中对齐文本layout_gravity指定如何对齐/布局TextView元素本身。

票数 164
EN

Stack Overflow用户

发布于 2017-03-24 13:04:13

Android中的TextView本身就提供了完全的理由(新的排版方式)。

你只需要这样做:

Kotlin

代码语言:javascript
运行
复制
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
    textView.justificationMode = JUSTIFICATION_MODE_INTER_WORD
}

Java

代码语言:javascript
运行
复制
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
    textView.setJustificationMode(JUSTIFICATION_MODE_INTER_WORD);
}

XML

代码语言:javascript
运行
复制
<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:justificationMode="inter_word" />

默认值为JUSTIFICATION_MODE_NONE (xml中的none)。

票数 140
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1292575

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档