0% found this document useful (0 votes)
3 views

android practical

Uploaded by

umarmemon6996
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

android practical

Uploaded by

umarmemon6996
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

Practical No 1

Create an application with following functionalities: Print and show a simple message e.g.
Hello Word
Activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.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:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

MainActivity.kt
package com.example.practical1

import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat

class MainActivity : AppCompatActivity() {


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

ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v,
insets ->
val systemBars =
insets.getInsets(WindowInsetsCompat.Type.systemBars())
v.setPadding(systemBars.left, systemBars.top,
systemBars.right, systemBars.bottom)
insets
}
}
}
Practical No 2

Android button & Toggle button from this create application


Activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="Click Me" />

<ToggleButton
android:id="@+id/toggleButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/button"
android:layout_centerHorizontal="true"
android:layout_marginTop="20dp"
android:textOff="OFF"
android:textOn="ON" />

</RelativeLayout>

MainActivity.kt
package com.example.practical2

import android.os.Bundle
import android.widget.Button
import android.widget.Toast
import android.widget.ToggleButton
import androidx.appcompat.app.AppCompatActivity

class MainActivity : AppCompatActivity() {


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

val button = findViewById<Button>(R.id.button)


val toggleButton = findViewById<ToggleButton>(R.id.toggleButton)

button.setOnClickListener {
// Handle button click
Toast.makeText(this@MainActivity, "Button Clicked",
Toast.LENGTH_SHORT).show()
}

toggleButton.setOnCheckedChangeListener { _, isChecked ->


// Handle toggle button state change
if (isChecked) {
Toast.makeText(this@MainActivity, "Toggle ON",
Toast.LENGTH_SHORT).show()
} else {
Toast.makeText(this@MainActivity, "Toggle OFF",
Toast.LENGTH_SHORT).show()
}
}
}
}
Practical no 3
Use of Toast & Custom Toast creates android application.
Activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<Button
android:id="@+id/buttonShowToast"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="Show Toast" />

</RelativeLayout>

MainActivity.kt
package com.example.practical3

import android.graphics.Color
import android.graphics.Typeface
import android.os.Bundle
import android.view.Gravity
import android.widget.Button
import android.widget.TextView
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity

class MainActivity : AppCompatActivity() {


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

val buttonShowToast = findViewById<Button>(R.id.buttonShowToast)

buttonShowToast.setOnClickListener {
// Show standard Toast message
showToast("This is a standard Toast")

// Show custom Toast message


showCustomToast("Custom Toast Example")
}
}

private fun showToast(message: String) {


Toast.makeText(this, message, Toast.LENGTH_SHORT).show()
}

private fun showCustomToast(message: String) {


val toast = Toast(this)
toast.duration = Toast.LENGTH_SHORT
val textView = TextView(this)
textView.text = message
textView.setBackgroundColor(Color.BLACK)
textView.setTextColor(Color.WHITE)
textView.gravity = Gravity.CENTER
textView.setPadding(20, 20, 20, 20)
textView.setTextSize(20F)
textView.setTypeface(null, Typeface.BOLD)
toast.view = textView
toast.setGravity(Gravity.CENTER, 0, 0)
toast.show()
}
}
Activity life cycle
MainActivity.kt
package com.example.lifecycle

import android.os.Bundle
import android.widget.Toast
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat

class MainActivity : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle?) {


super.onCreate(savedInstanceState)
Toast.makeText(this,"In OnCreate",Toast.LENGTH_LONG).show()
enableEdgeToEdge()
setContentView(R.layout.activity_main)
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main))
{ v, insets ->
val systemBars =
insets.getInsets(WindowInsetsCompat.Type.systemBars())
v.setPadding(systemBars.left, systemBars.top, systemBars.right,
systemBars.bottom)
insets
}

}
override fun onStart()
{
super.onStart()
Toast.makeText(this,"In OnStart",Toast.LENGTH_LONG).show()
}
override fun onStop()
{
super.onStop()
Toast.makeText(this,"In OnStop",Toast.LENGTH_LONG).show()
}
override fun onPause()
{
super.onPause()
Toast.makeText(this,"In OnPause",Toast.LENGTH_LONG).show()
}
override fun onResume()
{
super.onResume()
Toast.makeText(this,"In OnResume",Toast.LENGTH_LONG).show()
}
override fun onDestroy()
{
super.onDestroy()
Toast.makeText(this,"In OnDestroy",Toast.LENGTH_LONG).show()
}

}
Menu
MainActivity.kt
package com.example.menu

import android.os.Bundle
import android.view.Menu
import android.view.MenuItem
import android.widget.Toast
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat

class MainActivity : AppCompatActivity() {


override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContentView(R.layout.activity_main)
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v, insets ->
val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
insets
}
}
override fun onCreateOptionsMenu(menu: Menu): Boolean {
menuInflater.inflate(R.menu.menu, menu)
return true
}
override fun onOptionsItemSelected(item: MenuItem): Boolean {
val id = item.itemId
if (id == R.id.Search) {
Toast.makeText(this, "Search", Toast.LENGTH_LONG).show()
}
if (id == R.id.Home) {
Toast.makeText(this, "Home", Toast.LENGTH_LONG).show()
}
if (id == R.id.Contact_us) {
Toast.makeText(this, "Contact Us", Toast.LENGTH_LONG).show()
}
return super.onOptionsItemSelected(item)
}
}
Menu.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/Search"
android:title="Search"
app:showAsAction="always"/>
<item
android:id="@+id/Home"
android:title="Home"

<item
android:id="@+id/Contact_us"
android:title="Contact Us"/>
</menu>
List View
MainActivity.kt
package com.example.listview

import android.os.Bundle
import android.widget.ArrayAdapter
import android.widget.ListView
import android.widget.Toast
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat

class MainActivity : AppCompatActivity() {


override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContentView(R.layout.activity_main)
val arrayAdapter: ArrayAdapter<*>
val city = arrayOf<String>("Mumbai", "Pune", "Banglore", "Delhi")
val listView = findViewById<ListView>(R.id.List)
arrayAdapter = ArrayAdapter(this, android.R.layout.simple_list_item_1, city)
listView.adapter = arrayAdapter
listView.setOnItemClickListener { parent, view, position, id ->
val toast = Toast.makeText(this, "You clicked \n" + city[position], Toast.LENGTH_LONG)
toast.show()
}

ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v, insets ->


val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
insets
}
}
}
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"
tools:context=".MainActivity">

<ListView
android:id="@+id/List"
android:layout_width="match_parent"
android:layout_height="match_parent" />

</LinearLayout>
Layout
Relative layout
Activity_Main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent">

<TextView
android:id="@+id/textViewUsername"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="20dp"
android:layout_marginTop="50dp"
android:text="Username:" />

<EditText
android:id="@+id/editTextUsername"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_below="@id/textViewUsername"
android:layout_alignStart="@id/textViewUsername"
android:hint="Enter username" />

<TextView
android:id="@+id/textViewPassword"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/editTextUsername"
android:layout_alignStart="@id/editTextUsername"
android:layout_marginTop="20dp"
android:text="Password:" />

<EditText
android:id="@+id/editTextPassword"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_below="@id/textViewPassword"
android:layout_alignStart="@id/textViewPassword"
android:hint="Enter password"
android:inputType="textPassword" />

<Button
android:id="@+id/buttonRegister"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/editTextPassword"
android:layout_centerHorizontal="true"
android:layout_marginTop="30dp"
android:text="Register" />
</RelativeLayout>

MainActivity.kt
package com.example.relativelayout

import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat

class MainActivity : AppCompatActivity() {


override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContentView(R.layout.activity_main)
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v, insets ->
val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
insets
}
}
}
Linear 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:gravity="center_horizontal"
android:orientation="vertical"
tools:context=".MainActivity">

<EditText
android:layout_width="150dp"
android:layout_height="40dp"
android:layout_marginTop="50dp"
android:background="@color/black"
android:hint="Username"
android:textColor="@color/white"
android:textColorHint="@color/white" />

<EditText
android:layout_width="150dp"
android:layout_height="40dp"
android:layout_marginTop="20dp"
android:background="@color/black"
android:hint="Password"
android:textColor="@color/white"
android:textColorHint="@color/white" />

<Button
android:id="@+id/Btn"
android:layout_width="150dp"
android:layout_height="40dp"
android:layout_marginTop="20dp"
android:text="Sign In" />

</LinearLayout>
MainActivity.kt
package com.example.linearlayout

import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat

class MainActivity : AppCompatActivity() {


override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContentView(R.layout.activity_main)
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v, insets ->
val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
insets
}
}
}
Grid Layout
Activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<GridLayout 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:layout_row="2"
android:layout_column="1"
android:background="@color/sample"
tools:context=".MainActivity">
<EditText
android:id="@+id/Username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_row="0"
android:layout_column="0"
android:ems="10"
android:hint="Username"
android:inputType="textEmailAddress" />
<EditText
android:id="@+id/Password"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_row="0"
android:layout_column="1"
android:ems="10"
android:hint="Password"
android:inputType="textPassword" />
<ImageView
android:layout_width="180dp"
android:layout_height="130dp"
android:layout_row="1"
android:layout_column="0"
android:layout_marginLeft="12dp"
android:src="@drawable/a" />
<ImageView
android:layout_width="180dp"
android:layout_height="130dp"
android:layout_row="1"
android:layout_column="1"
android:layout_marginLeft="15dp"
android:src="@drawable/b" />

<Button
android:id="@+id/Register"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_row="2"
android:layout_column="0"
android:text="Sign In" />
</GridLayout>
Colors.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="black">#FF000000</color>
<color name="white">#FFFFFFFF</color>
<color name="sample">#F08080</color>
</resources>
MainActivity.kt
package com.example.gridlayout
import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContentView(R.layout.activity_main)
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v, insets ->
val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
insets
}
}
}
Absolute layout
Activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent">

<TextView
android:id="@+id/textViewUsername"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="20dp"
android:layout_y="50dp"
android:text="Username:" />

<EditText
android:id="@+id/editTextUsername"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_x="120dp"
android:layout_y="50dp"
android:hint="Enter username" />

<TextView
android:id="@+id/textViewPassword"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="20dp"
android:layout_y="100dp"
android:text="Password:" />

<EditText
android:id="@+id/editTextPassword"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_x="120dp"
android:layout_y="100dp"
android:hint="Enter password"
android:inputType="textPassword" />

<Button
android:id="@+id/buttonRegister"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="150dp"
android:layout_y="150dp"
android:text="Register" />

</AbsoluteLayout>
MainActivity.kt
package com.example.absolutelayout

import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat

class MainActivity : AppCompatActivity() {


override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContentView(R.layout.activity_main)
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v, insets ->
val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
insets
}
}
}

You might also like