This website includes Education Information like a programming language, job interview question, general knowledge.mathematics

Education log

PageNavi Results No.

Ads

Wednesday, April 1, 2020

alert dialog android kotlin example

alert dialog android kotlin example


Today learn tutorial alert dialog android kotlin example the following example full source code.

Android AlertDialog
 is a subclass of Dialog class. It is used to prompt a small dialog window to make a decision before a user can proceed in the same activity.





1.MainActivity.kt:


package com.akash.alertdialogbox

import android.content.DialogInterface
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import android.view.View
import android.widget.Button
import android.app.AlertDialog
import android.widget.Toast

class MainActivity:AppCompatActivity() {
  internal var closeButton:Button
  internal var builder:AlertDialog.Builder
  protected fun onCreate(savedInstanceState:Bundle) {

    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    closeButton = findViewById(R.id.button) as Button
    builder = AlertDialog.Builder(this)

    closeButton.setOnClickListener(object:View.OnClickListener() {
      fun onClick(v:View) {
        //Uncomment the below code to Set the message and title from the strings.xml file
        builder.setMessage(R.string.dialog_message).setTitle(R.string.dialog_title)
        //Setting message manually and performing action on button click

        builder.setMessage("Do you want to close this application ?")

        .setCancelable(false)

        .setPositiveButton("Yes", object:DialogInterface.OnClickListener() {
          fun onClick(dialog:DialogInterface, id:Int) {

            finish()
            Toast.makeText(getApplicationContext(), "you choose yes action for alertbox",
                           Toast.LENGTH_SHORT).show()
          }
        })

        .setNegativeButton("No", object:DialogInterface.OnClickListener() {
          fun onClick(dialog:DialogInterface, id:Int) {
            // Action for 'NO' Button
            dialog.cancel()
            Toast.makeText(getApplicationContext(), "you choose no action for alertbox",
                           Toast.LENGTH_SHORT).show()
          }
        })

        //Creating dialog box
        val alert = builder.create()
        //Setting the title manually
        alert.setTitle("AlertDialogExample")
        alert.show()
      }
    })
  }
}




2.activity_main.xml:


<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.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:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="example.javatpoint.com.alertdialog.MainActivity">

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/button"
        android:text="Close app"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

</android.support.constraint.ConstraintLayout>


3.AndroidManifest.xml:


<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.akash.alertdialogbox">

    <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>

No comments:

Post a Comment