Android EditText in Kotlin
EditText is used to get input from the user. EditText is commonly used in forms and login or registration screens. Following steps are used to create EditText in Kotlin:
- Add a EditText in activity_main.xml file.
- Add a Button in activity_main.xml file.
- Open MainActivity.kt file and set OnClickListener for the button to get the user input from EditText and show the input as Toast message.
Different attributes of EditText widgets –
XML Attributes |
Description |
android:id |
Used to uniquely identify the control |
android:gravity |
Used to specify how to align the text like left, right, center, top, etc. |
android:hint |
Used to display the hint text when text is empty |
android:text |
Used to set the text of the EditText |
android:textSize |
Used to set size of the text. |
android:textColor |
Used to set color of the text. |
android:textStyle |
Used to set style of the text. For example, bold, italic, bolditalic etc. |
android:textAllCaps |
Used this attribute to show the text in capital letters. |
android:width |
It makes the TextView be exactly this many pixels wide. |
android:height |
It makes the TextView be exactly this many pixels tall. |
android:maxWidth |
Used to make the TextView be at most this many pixels wide. |
android:minWidth |
Used to make the TextView be at least this many pixels wide. |
android:background |
Used to set background to this View. |
android:backgroundTint |
Used to set tint to the background of this view. |
android:clickable |
Used to set true when you want to make this View clickable. Otherwise, set false. |
android:drawableBottom |
Used to set drawable to bottom of the text in this view. |
android:drawableEnd |
Used to set drawable to end of the text in this view. |
android:drawableLeft |
Used to set drawable to left of the text in this view. |
android:drawablePadding |
Used to set padding to drawable of the view. |
android:drawableRight |
Used to set drawable to right of the text in this view. |
android:drawableStart |
Used to set drawable to start of the text in this view. |
android:drawableTop |
Used to set drawable to top of the text in this view. |
android:elevation |
Used to set elevation to this view. |
activity_main.xml file
Step 1: Open activity_main.xml file and create an EditText using id editText.
html
<? xml version="1.0" encoding="utf-8"?>
< LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
< EditText
android:id="@+id/editText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="16dp"
android:hint="Input"
android:inputType="text"/>
</ LinearLayout >
|
Step 2: In activity_main.xml file add code to show a button. Final activity_main.xml file is
html
<? xml version="1.0" encoding="utf-8"?>
< LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
< EditText
android:id="@+id/editText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="16dp"
android:hint="Input"
android:inputType="text"/>
< Button
android:id="@+id/showInput"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="show"
android:backgroundTint="@color/colorPrimary"
android:textColor="@android:color/white"
/>
</ LinearLayout >
|
Step 3: Open MainActivity.kt file and get the reference of Button and EditText defined in the layout file.
// finding the button
val showButton = findViewById<Button>(R.id.showInput)
// finding the edit text
val editText = findViewById<EditText>(R.id.editText)
Setting the on click listener to the button
showButton.setOnClickListener {
}
Getting the text entered by user
val text = editText.text
MainActivity.kt file
Finally the MainActivity.kt file is
java
package com.geeksforgeeks.myfirstkotlinapp
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button
import android.widget.EditText
import android.widget.Toast
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super .onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val showButton = findViewById<Button>(R.id.showInput)
val editText = findViewById<EditText>(R.id.editText)
showButton.setOnClickListener {
val text = editText.text
Toast.makeText( this , text, Toast.LENGTH_SHORT).show()
}
}
}
|
AndroidManifest.xml file
xml
<? xml version="1.0" encoding="utf-8"?>
package="com.geeksforgeeks.myfirstkotlinapp">
< application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
< activity android:name=".MainActivity">
< intent-filter >
< action android:name="android.intent.action.MAIN" />
< category android:name="android.intent.category.LAUNCHER" />
</ intent-filter >
</ activity >
</ application >
</ manifest >
|
Run as emulator for the Output
Last Updated :
25 Nov, 2022
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...