Sat. Nov 27th, 2021

Toast dan Alert digunakan sebagai notifikasi pesan kepada user. misalnya ada sebuah pilihan memilih apakah proses dilanjutkan atau dibatalkan maka  alert dialog diperlukan sebagai proses yang akan dieksekusi. ketika user memilih YA/Yes maka proses dilanjutkan namun jika user memilih No/Tidak maka proses dibatalkan.

Seperti Apa Toast itu. dapat dilihat pada gambar dibawah ini. di mana ketika user mengklik tombol button toast maka akan ada pesan Haiii pada bagian bawah

kemudian ada pesan lagi dengan tulisan Rikiiiii

hal ini disebabkan ada 2 action toast yang dimasukkan kedalam codingan btn_toast:

btntoast.setOnClickListener(){
    //cara 1 secara langsung
    Toast.makeText(applicationContext,"Haiii",Toast.LENGTH_SHORT).show()
    //cara 2 dengan menggunakan variabel
    val toast = Toast.makeText(applicationContext, "Rikiiiii ", Toast.LENGTH_SHORT)
    toast.show()
}
setelah button toast kita pelajari, maka kita lanjut membahas tentang alert dialog. misalnya ada 3 optional pilihan button Cancel, No, dan YES. ketika user memilih button Cancel maka akan ada pesan "Anda Pilih Batal" dan seterusnya

misal pilih Cancel maka akan ada pesan sebagai berikut

 

full code: layout_button.xml

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

    <TableLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="match_parent" >

            <TextView
                android:id="@+id/textView2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="BUTTON ACTION"
                android:textSize="12dp"
                android:layout_weight="1"
                android:layout_column="1"/>
        </TableRow>

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="match_parent" >

            <Button
                android:id="@+id/btntoast"
                android:layout_width="203dp"
                android:layout_height="wrap_content"
                android:layout_column="1"
                android:text="Button Toast" />
        </TableRow>

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="match_parent" >

            <Button
                android:id="@+id/btnalert"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_column="1"
                android:text="Button Alert" />
        </TableRow>

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="match_parent" />
    </TableLayout>
</LinearLayout>

full code MainActivity.kt

package a.riki.cobahello

import android.app.AlertDialog
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import android.widget.Toast
import kotlinx.android.synthetic.main.layout_button.*

class MainActivity : AppCompatActivity() {

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

        //Toast
        btntoast.setOnClickListener(){
            //cara 1
            Toast.makeText(applicationContext,"Haiii",Toast.LENGTH_SHORT).show()
            //cara 2
            val toast = Toast.makeText(applicationContext, "Rikiiiii ", Toast.LENGTH_SHORT)
            toast.show()
        }

        btnalert.setOnClickListener {
            val builder = AlertDialog.Builder(this)

            //performing positive action
            builder.setPositiveButton("Yes"){dialogInterface, which ->
                Toast.makeText(applicationContext,"Anda Pilih Ya",Toast.LENGTH_LONG).show()
            }
            //performing cancel action
            builder.setNeutralButton("Cancel"){dialogInterface , which ->
                Toast.makeText(applicationContext,"Anda Pilih Batal",Toast.LENGTH_LONG).show()
            }
            //performing negative action
            builder.setNegativeButton("No"){dialogInterface, which ->
                Toast.makeText(applicationContext,"Anda Pilh Tidak",Toast.LENGTH_LONG).show()
            }
            // Create the AlertDialog
            val alertDialog: AlertDialog = builder.create()
            // Set other dialog properties
            alertDialog.setCancelable(false)
            alertDialog.show()
        }
    }
}