Android TextView 多行问题(去掉第二行的gab)

Posted

技术标签:

【中文标题】Android TextView 多行问题(去掉第二行的gab)【英文标题】:Android TextView multiple line problem (remove gab in second line) 【发布时间】:2021-03-27 22:00:30 【问题描述】:

有两个TextView,第二个TextView是多行的。 但是第二行前面有一个空隙。我想做如下

UserName Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World

请给我一些建议。 谢谢。

【问题讨论】:

【参考方案1】:

你不直接做你需要使用下面的库

https://github.com/deano2390/FlowTextView

【讨论】:

【参考方案2】:

您可以通过使用 SpannableString 将用户名和长文本附加到一起,使用单个文本视图以编程方式实现此行为。我在下面分享一个示例供您查看。

your_layout.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_
    android:layout_>

    <TextView
        android:id="@+id/txt_title"
        android:layout_
        android:layout_
        android:layout_marginStart="8dp"
        android:layout_marginLeft="8dp"
        android:layout_marginEnd="8dp"
        android:layout_marginRight="8dp"
        android:fontFamily="@font/montserrat_regular"
        android:textColor="@color/black"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        tools:text="test text" />
    

</android.support.constraint.ConstraintLayout>

在你的班级中,你可以像这样附加字符串:

你的活动

val userNameText = "User name "
val normalText = "Your long text Your long text Your long text Your long text"
val str = SpannableString(userNameText + normalText)
str.setSpan(
         StyleSpan(Typeface.BOLD),
         0,
         boldText.length,
         Spannable.SPAN_EXCLUSIVE_EXCLUSIVE
      )

txt_title.text = str

就是这样。您将完全得到您正在寻找的内容,此外您还可以为您的字符串添加任何样式。

【讨论】:

【参考方案3】:

仅使用 1 个文本视图。

textView.setText(用户名 Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!你好,世界);

【讨论】:

以上是关于Android TextView 多行问题(去掉第二行的gab)的主要内容,如果未能解决你的问题,请参考以下文章

Android中的多行TextView?

Android 并在 TableRow 的 TextView 中显示多行文本

Android TextView 不会用多行紧紧地拥抱文本,而是坚持使用 maxWidth

android 如何去掉TextView结尾的空行

android textview 多行文字居中 不是gravity 也不是layout——gravity

请问Android中怎么去掉TextView的背景?