E:\android\android apps\App15\app\src\main\AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<application
android:allowBackup="true"
android:dataExtractionRules="@xml/data_extraction_rules"
android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.App15"
tools:targetApi="31">
<activity
android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
E:\android\android apps\App15\app\src\main\res\layout\activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="hello"
android:textSize="20sp"
android:textColor="#234098"
android:textAllCaps="true"
android:textStyle="bold|italic"
android:id="@+id/tv"
android:typeface="monospace"
android:gravity="center"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Click Me"
android:textSize="20sp"
android:textColor="#234098"
android:textAllCaps="true"
android:textStyle="bold|italic"
android:id="@+id/bt"
android:typeface="monospace"
android:gravity="center"/>
</LinearLayout>
E:\android\android apps\App15\app\src\main\java\com\example\app15\MainActivity.kt
package com.example.app15
import android.os.Bundle
import android.view.View
import android.widget.Button
import android.widget.TextView
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
class MainActivity : AppCompatActivity() {
var textView: TextView? = null
var button: Button? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
textView = findViewById<View>(R.id.tv) as TextView
button = findViewById<View>(R.id.bt) as Button
button!!.setOnClickListener {
textView!!.text = "Hi Hello Good morning"
}
}
}

Ex02
E:\android\android apps\App15\app\src\main\AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<application
android:allowBackup="true"
android:dataExtractionRules="@xml/data_extraction_rules"
android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.App15"
tools:targetApi="31">
<activity
android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
E:\android\android apps\App15\app\src\main\res\layout\activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Hello World!"
android:textSize="20sp"
android:textColor="#FF5722"
android:textAllCaps="true"
android:textStyle="bold|italic"
android:id="@+id/tv"
android:typeface="monospace"
android:gravity="center"
/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Hello World!"
android:layout_margin="10dp"
android:padding="10sp"
android:textSize="20sp"
android:textColor="#FF5722"
android:textAllCaps="true"
android:textStyle="bold|italic"
android:id="@+id/tv2"
android:typeface="monospace"
android:gravity="center"
/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="VISIBLE"
android:textSize="20sp"
android:textColor="#234098"
android:textAllCaps="true"
android:textStyle="bold|italic"
android:id="@+id/bt1"
android:typeface="monospace"
android:gravity="center"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="INVISIBLE"
android:textSize="20sp"
android:textColor="#234098"
android:textAllCaps="true"
android:textStyle="bold|italic"
android:id="@+id/bt2"
android:typeface="monospace"
android:gravity="center"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Gone"
android:textSize="20sp"
android:textColor="#234098"
android:textAllCaps="true"
android:textStyle="bold|italic"
android:id="@+id/bt3"
android:typeface="monospace"
android:gravity="center"/>
</LinearLayout>
E:\android\android apps\App15\app\src\main\java\com\example\app15\MainActivity.kt
package com.example.app15
import android.os.Bundle
import android.view.View
import android.widget.Button
import android.widget.TextView
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
class MainActivity : AppCompatActivity() {
//1
var textView: TextView? = null //here exception means handel null exeption insted of try & catch Blocks
var button1: Button? = null
var button2: Button? = null
var button3: Button? = null
//String button =new Button() //java every thing is an Object & import from Java side
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
//2
// textView = findViewById<View>(R.id.tv) as TextView
// button = findViewById<View>(R.id.bt) as Button
textView = findViewById(R.id.tv)
button1 = findViewById(R.id.bt1)
button2 = findViewById(R.id.bt2)
button3 = findViewById(R.id.bt3)
//3
button1!!.setOnClickListener {
textView!!.text = "Hi Hello Good morning"
textView?.visibility=View.VISIBLE
}
button2!!.setOnClickListener {
textView!!.text = "Hi Hello Good morning"
textView?.visibility=View.INVISIBLE
}
button3!!.setOnClickListener {
textView!!.text = "Hi Hello Good morning"
textView?.visibility=View.GONE
}
}
}
Output:

Using Binding Way To Handel Data
E:\android\android apps\App15\app\build.gradle.kts
kotlinOptions {
jvmTarget = "1.8"
}
dataBinding{
enable=true
//enabled=true old version of android sdk Do it
}
}
dependencies {
implementation(libs.androidx.core.ktx)
implementation(libs.androidx.appcompat)
implementation(libs.material)
implementation(libs.androidx.activity)
implementation(libs.androidx.constraintlayout)
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.junit)
androidTestImplementation(libs.androidx.espresso.core)
}
E:\android\android apps\App15\app\src\main\AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<application
android:allowBackup="true"
android:dataExtractionRules="@xml/data_extraction_rules"
android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.App15"
tools:targetApi="31">
<activity
android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
E:\android\android apps\App15\app\src\main\res\layout\activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<layout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Hello World!"
android:textSize="20sp"
android:textColor="#FF5722"
android:textAllCaps="true"
android:textStyle="bold|italic"
android:id="@+id/tv"
android:typeface="monospace"
android:gravity="center"
/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Hello World!"
android:layout_margin="10dp"
android:padding="10sp"
android:textSize="20sp"
android:textColor="#FF5722"
android:textAllCaps="true"
android:textStyle="bold|italic"
android:id="@+id/tv2"
android:typeface="monospace"
android:gravity="center"
/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="VISIBLE"
android:textSize="20sp"
android:textColor="#234098"
android:textAllCaps="true"
android:textStyle="bold|italic"
android:id="@+id/bt1"
android:typeface="monospace"
android:gravity="center"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="INVISIBLE"
android:textSize="20sp"
android:textColor="#234098"
android:textAllCaps="true"
android:textStyle="bold|italic"
android:id="@+id/bt2"
android:typeface="monospace"
android:gravity="center"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Gone"
android:textSize="20sp"
android:textColor="#234098"
android:textAllCaps="true"
android:textStyle="bold|italic"
android:id="@+id/bt3"
android:typeface="monospace"
android:gravity="center"/>
</LinearLayout>
</layout>
E:\android\android apps\App15\app\src\main\java\com\example\app15\MainActivity.kt
package com.example.app15
import android.os.Bundle
import android.view.View
import android.widget.Button
import android.widget.TextView
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import androidx.databinding.DataBindingUtil
import com.example.app15.databinding.ActivityMainBinding
class MainActivity : AppCompatActivity() {
//1
//var textView: TextView? = null //here exception means handel null exeption insted of try & catch Blocks
//var button1: Button? = null
//var button2: Button? = null
//var button3: Button? = null
var binding:ActivityMainBinding?=null
//String button =new Button() //java every thing is an Object & import from Java side
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
//setContentView(R.layout.activity_main)
binding=DataBindingUtil.setContentView(this,R.layout.activity_main)
//2
// textView = findViewById<View>(R.id.tv) as TextView
// button = findViewById<View>(R.id.bt) as Button
//textView = findViewById(R.id.tv)
//button1 = findViewById(R.id.bt1)
//button2 = findViewById(R.id.bt2)
//button3 = findViewById(R.id.bt3)
//3
/*
button1!!.setOnClickListener {
textView!!.text = "Hi Hello Good morning"
textView?.visibility=View.VISIBLE
}
button2!!.setOnClickListener {
textView!!.text = "Hi Hello Good morning"
textView?.visibility=View.INVISIBLE
}
button3!!.setOnClickListener {
textView!!.text = "Hi Hello Good morning"
textView?.visibility=View.GONE
}
*/
binding?.bt1!!.setOnClickListener {
binding?.tv2?.text = "Hi Hello Good morning"
binding?.tv2?.visibility=View.VISIBLE
}
binding?.bt2!!.setOnClickListener {
binding?.tv2?.text = "Hi Hello Good morning"
binding?.tv2?.visibility=View.INVISIBLE
}
binding?.bt3!!.setOnClickListener {
binding?.tv2?.text = "Hi Hello Good morning"
binding?.tv2?.visibility=View.GONE
}
}
}

|