[Android/Kotlin]ダイアログを表示する

目次

概要

Kotlinでダイアログを表示する。
ダイアログはどうしたらいいかなと思ってたのですが、どうやらActivityでしか実装できない様子。

ソースコード

MainActivity.kt
package com.seeking_star.test

import android.app.AlertDialog
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button

class MainActivity : AppCompatActivity() {

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

        findViewById<Button>(R.id.button4).setOnClickListener {
            AlertDialog.Builder(this)
                .setTitle("ダイアログのタイトルを表示")
                .setMessage("ダイアログの文章を表示")
                .setPositiveButton("OK") { dialog, which ->
                    // OKボタン押下時の処理
                }
                .setNegativeButton("キャンセル") { dialog, which ->
                    // キャンセル押下時の処理
                }
                .setNeutralButton("閉じる") { dialog, which ->
                    // 閉じるボタン押下時の処理
                }
                .show()
        }
    }
}
Kotlin

処理部分

スクリーンショット

詳細

主にボタンの種類は三種類

項目内容
setPositiveButtonOKボタンや承認など、何かの処理を行うためのボタン
表示位置はダイアログの右下。
setNegativeButton何かを聞かれてNOのボタンや、キャンセルボタン押下時に処理を行うためのボタン。
表示位置はダイアログの右下。ただしPositiveButtonの左に表示される
setNeutralButton閉じるボタンなど、ダイアログを閉じるためののボタン?
表示位置はダイアログの左下。

また、Fragmentでもダイアログは表示できるようだが、よくわからない…
これはまた後日更新になりそう。
【Kotlin】DialogFragmentでダイアログ表示【Androidアプリ開発】

参考ページ:
【Android】ダイアログ(確認メッセージ)を表示する方法【Kotlin】