DeretCode|

Tips, Trik dan Tutorial
Seputar IT, Coding, Internet Marketing, Keahlian, Pendidikan, Hobi Dan Lainnya
Night :

Tutorial Membuat Base Dialog Di Aplikasi Android

advertisement
Tutorial Membuat Base Dialog Di Android

Dialog adalah jendela kecil yang muncul diatas sebuah activity untuk memberikan informasi, meminta keputusan ataupun input data tertentu dari user. Dioalog tidak mengisi ruang layar secara penuh tapi berada di tengah layar dan menimpa activity konteksnya(pen: Acitvity terakhir yang tampil). Berikut contoh dari komponen Dialog pada android.
Contoh dialog di aplikasi android
    Pada artikel ini saya mengasumsikan bahwa sobat sekalian sudah dapat membuat Dialog. Oleh karena pada artikel ini tidak akan dijelaskan tahapan dalam pembuatan dialognya. Saya akan langsung ke pembahasan yaitu tutorial membuat base dialog di aplikasi android. 

Tujuan

Kenapa harus bikin base dialog?. Sebenarnya tidak masalah jika kamu hanya membuat satu dialog saja di aplikasi yang sedang kamu buat, kamu bisa langsung mengextend DialogFragment ke class dialog yang sedang kamu buat. Tapi bagaimana jika kamu membuat banyak sekali dialog, dengan fungsi-fungsi yang hampir mirip didalamnya?. Tentu cara yang paling efisien adalah membuat semua fitur-fiturnya dalam satu class base kemudian kita extend class basenya ke class dialog kita, selain itu kita juga bisa mengkotumisasi basenya agar lebih mudah di implimentasikan. Nah itu tujuannya kenapa kita harus bikin class base.

Penulisan Code

1. Buat sebuah package folder dengan nama base
2. Buat sebuah class bernama BaseDialog didalam folder package base tadi, disini kita akan menggunakan kotlin karena lebih mudah.
Beri nama BaseDialog dan pilih tipe Class kemudian OK

3. Didalam class BaseDialog tadi silahkan kalian tulis code berikut,
package com.zain.tutorialgson.base

import android.app.Dialog
import android.graphics.Color
import android.graphics.drawable.ColorDrawable
import android.os.Bundle
import android.support.v4.app.DialogFragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.view.Window
import android.widget.RelativeLayout

abstract class BaseDialog : DialogFragment() {
    override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
        val root = RelativeLayout(activity)
        root.layoutParams = ViewGroup.LayoutParams(
            ViewGroup.LayoutParams.MATCH_PARENT,
            ViewGroup.LayoutParams.WRAP_CONTENT
        )
        var dialog = Dialog(context!!)
        dialog.requestWindowFeature(Window.FEATURE_NO_TITLE)
        dialog.setContentView(root)
        if (dialog.window != null) {
            dialog.window!!.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT))
            dialog.window!!.setLayout(
                ViewGroup.LayoutParams.MATCH_PARENT,
                ViewGroup.LayoutParams.WRAP_CONTENT
            )
        }
        dialog.setCanceledOnTouchOutside(false)
        return dialog
    }

    override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
        return inflater.inflate(setLayout(), container, false)
    }

    override fun onActivityCreated(savedInstanceState: Bundle?) {
        super.onActivityCreated(savedInstanceState)
        initDialog()
    }
    //----------SetUp------------------------------
    abstract fun setLayout(): Int

    abstract fun initDialog()
    
     //-------Buat fungsi-fungsi kalian dibawah sini--------

    //Memanggil Toast menjadi lebih sederhana
    fun showToast(message :String) {
        Toast.makeText(this.context,message,Toast.LENGTH_LONG)
    }
}
Penjelasan
Disini kita membuat class BaseDialognya menjadi abstract class agar tidak bisak langsung di implementasikan. Pada basedialog tersebut kita menggunakan tiga callback dari dialog yaitu onCreateDialog, onCreatedView dan onCreatedActivity. Pada onCreateDialog kita mengatur seperti apa tampilan umum dari dialognya, seperti background, ukuran dan lainnya. Pada onCreatedView kita coba mengatur cara menset layout.xml nya yaitu dengan methode abstract setLayout. Pada onActivityCreated disini kita memanggil methode abstract iniDialog sebagai tempat inisialisai varible dan methodenya di class dialog turunan. Methode showToast adalah cara menampilkan toast dengan lebih sederhana

Cara Penggunaan

Cara penggunaannya sangat mudah, yaitu dengan mengganti inheritance dari dialognya menjadi BaseDialog, codenya sebagai berikut
package com.zain.tutorialgson.base

import com.zain.tutorialgson.R

//class PopUpDialog :DialogFragment()
//Ganti inheritancenya
class PopUpDialog :BaseDialog() {
    override fun setLayout(): Int = R.layout.dialog_layout

    override fun initDialog() {
        //Tulis kodingmu disini
        showToast("Dialog Berhasil dibuat")
    }
}



    Sekian dulu tutorial kali cara membuat base dialog di android. Terimakasih sudah mampir, jangan lupa di share jika kalian merasa artikel ini bermanfaat, kalau ada pertanyaan silahkan tulis di kolom komentar. Good luck!
advertisement



0 Komentar untuk " Tutorial Membuat Base Dialog Di Aplikasi Android"

Silahkan berkomentar dengan baik dan bijak!