Есть два 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
Пожалуйста, дайте мне совет. Спасибо.
Вы не делаете это напрямую, вам нужно использовать библиотеку ниже
https://github.com/deano2390/FlowTextView
Вы можете добиться такого поведения программно с помощью одного текстового представления, добавив вместе имя пользователя и длинный текст с помощью SpannableString. Я делюсь примером ниже, чтобы вы могли взглянуть.
ваш_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_width = "match_parent"
android:layout_height = "match_parent">
<TextView
android:id = "@+id/txt_title"
android:layout_width = "0dp"
android:layout_height = "wrap_content"
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
Вот и все. Вы получите именно то, что ищете, и, кроме того, вы можете придать своей строке любой стиль.
Используйте только 1 текстовое представление.
textView.setText(UserName Привет, мир! Привет, мир! Привет, мир! Привет, мир! Привет, мир! Привет, мир! Привет, мир! Привет, мир! Привет, мир! Привет, мир! Привет, мир! Привет, мир! Привет, мир! Привет, мир! Привет, мир) ;