Skip to main content

Basic of kotlin Android: TextView and AutoSize TextView

First of all, we will take look at some of the common View used for Android app development and how to use it using the Kotlin language.

TextView


TextView is very common view in android app development.

Declare the TextView in Kotlin

There is two way to declare the View using the Kotlin one is the Java way and other is the Kotlin way.

Below is the Java way to declare the TextView


Declare the TextView in the XML file, there is no any difference in the declaration.
<TextView
android:id="@+id/textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />

Initialize the TextView and set the text into the text view
//Initialize the view
var txtView:TextView=findViewById(R.id.textview)
//set the String in textView
txtView.setText("How to use the TextView in Kotlin")

Use the TextView in Kotlin way


Declare the TextView in XML file
<TextView
android:id="@+id/textview2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textview" />

Initialize the TextView and set the value.
//Initialize the TextView
var txtView2:TextView=textview2
//Set the value on TextView
txtView2.text="The Kotlin way to set the Data"

In the above code, we are just retrieving the TextView from XML file by importing the XML file into the activity as given below.
//Import the XML file
import kotlinx.android.synthetic.main.activity_main.*

Further, In Kotlin we just referer the view.text=value as given below.
// set the data on textview  
txtView2.text="The Kotlin way to set the Data"

Kotlin TextView

Autosizing TextViews


Autosizing of TextViews functionality is supported from Android 8.0 (API level 26) to let the text size automatically expand or shrink depending on the TextView characteristics.

There is three way to set the auto sizing of TextView in android.

Default


We can set the Autosizing of the TextView in XML file like below.
<TextView
android:layout_width="match_parent"
android:layout_height="200dp"
android:text="Autosize TextView"
android:autoSizeTextType="uniform"/>

Here, we can set the autoSizeTextType as none or uniform, if we set it as the uniform then it will expand or shrink the TextView automatically depending layout.

The output of the TextView will be like below.

AutoSize TextView

Setting the layout size programmatically by code.
textview2.setAutoSizeTextTypeWithDefaults(TextView.AUTO_SIZE_TEXT_TYPE_UNIFORM)

Granularity


We can also define the auto size properties of the TextView using the minimum and maximum size and granularity. We can set it using the below configuration in the XML file.
<TextView
android:id="@+id/textview2"
android:layout_width="match_parent"
android:layout_height="200dp"
android:autoSizeTextType="uniform"
android:autoSizeMinTextSize="12sp"
android:autoSizeMaxTextSize="100sp"
android:autoSizeStepGranularity="2sp"/>

It is important to note that we can set the wrap content in the configuration file if we want to use auto sizing of the TextView.

 

Comments

Popular posts from this blog

Flutter How to Start Android Activity from Flutter View

Flutter and Dart is an excellent combination for creating the UI, but for accessing the platform-specific service we need to open platform-specific activity. So lets in this article we will explore how to start an android activity and access the service from Flutter View. Create a Project for this Android Activity Flutter View Demo Create a Project From File menu select the New Flutter Project Enter the project name Select the AndroidX support and click on next After the above, we step click on Finish We will have the following project structure created. Create the Second Activity in Android Just go to the android folder and open it in separate windows. We will have the following project structure. Create the Activity Just right-click on the Kotlin folder and create a blank activity from the menu. If you create the activity then you may be required to upgrade the Gradle and do some import. So Just click on update and wait for the project s

Kotlin Parcelable Array Objects Send To Activity

We know that IPC (Inter Process Communication) between the activity is an extremely important part of any application development. We often required that we need to send some data to other activity. For example, we may be required to send an array of data, data could be an Integer, String, Long, Double, Float or any other custom data objects. So, In this example, we are going to learn how to implement the Kotlin Parcelable Array object to send the data from one activity to second activity. What is Parcel? The parcel class is designed as a high-performance IPC transport. A Parcel can contain both flattened data that will be unflattened on the other side of the IPC, and references to live IBinde r objects that will result in the other side receiving a proxy IBinder connected with the original IBinder in the Parcel. Create Kotlin Parcelable Array Objects Parcelable is API for placing the arbitrary objects into the Parcel. In Actual in android app development, Parcelable is an interface

Scan and List All Available WiFi Network In Android

In this tutorial, we learn how to connect to a WiFi hotspot in android by code. In this Demo we will create an as small app which will scan the all available network or Hotspot and list down the network when you select specific network, the application will connect that particular network. You May Like Below Topic: How to Read and Write JSON data using GSON WP Android App using REST and volley WP Android App using REST and volley part2 Implementation of SwipeRefreshLayout in RecyclerView Create Amazing Bottom Navigation Bar Without Any External Library Introduction In this tutorial, we learn how to connect to a WiFi hotspot in android by code. In this Demo we will create an as small app which will scan the all available network or Hotspot and list down the network when you select specific network, the application will connect that particular network. We will add this functionality to our existing Demo app " Video Gallery ". If you would like to check out t