Skip to main content

How to set the maximum number of lines in a TextView in Kotlin Android

How to set the maximum number of lines in a TextView in Kotlin Android.

Here's a step-by-step tutorial on how to set the maximum number of lines in a TextView in Kotlin for Android:

Step 1: Create a new Android project

To begin, create a new Android project in your preferred IDE. Give it a name and choose the minimum SDK version you want to target.

Step 2: Add a TextView to the layout file

Open the layout file (usually named activity_main.xml) and add a TextView element. Set the desired attributes like text, font size, etc. For example:

<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed fringilla nunc vel aliquet efficitur."
android:maxLines="3"
android:ellipsize="end"
/>

In this example, we have set the maximum number of lines to 3 using the android:maxLines attribute. The android:ellipsize attribute is used to add an ellipsis at the end if the text exceeds the maximum number of lines.

Step 3: Initialize the TextView in the activity

In your activity file (usually named MainActivity.kt), import the necessary classes and initialize the TextView using its ID from the layout file. For example:

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import android.widget.TextView

class MainActivity : AppCompatActivity() {
private lateinit var textView: TextView

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)

textView = findViewById(R.id.textView)
}
}

Step 4: Set the maximum number of lines programmatically

To set the maximum number of lines programmatically, you can use the setMaxLines() method of the TextView class. For example, you can add the following code inside the onCreate() method of your activity:

textView.maxLines = 3

This will set the maximum number of lines to 3 for the TextView.

Step 5: Update the ellipsize behavior

By default, when the text exceeds the maximum number of lines, an ellipsis is added at the end. You can customize this behavior by setting the android:ellipsize attribute in the layout file, or by using the setEllipsize() method programmatically. For example:

textView.ellipsize = TextUtils.TruncateAt.MIDDLE

This will truncate the text in the middle when it exceeds the maximum number of lines.

Step 6: Run the app

Finally, run your app on an Android emulator or physical device to see the TextView with the maximum number of lines set. The text will be truncated or ellipsized if it exceeds the specified limit.

That's it! You have successfully set the maximum number of lines in a TextView in Kotlin for Android. You can customize the maximum line count and ellipsize behavior based on your requirements.