Mode Malam
| Mode Tampilan
Penulis : admin

Home » Programming » Tutorial Membuat Base Activity Android Menggunakan Bahasa Pemrogramman Kotlin
Tutorial Membuat Base Activity Android Menggunakan Bahasa Pemrogramman Kotlin

Tutorial Membuat Base Activity Android Menggunakan Bahasa Pemrogramman Kotlin


Halo sobat, pada kesempatan kali saya akan membagikan tutorial cara membuat base acitvity pada aplikasi android. Base activity adalah sebuat abstract class turunan dari class activity. Tujuannya adalah untuk memodifikasi dan membeberikan fungsi fungsi tertentu dari class activity yang nantinya akan memudahkan dan mempersingkat waktu pengembangan aplikasi yang sedang kalian buat. Oke langsung saja ke pembahasan.

Apa itu activity di android?

Activty adalah sebuah komponen penting dalam pengembangan aplikasi android yang bertugas sebagai user interface dan menerima action dari pengguna. Tanpa Komponen ini, aplikasi yang dibuat hanya akan berjalan di latar belakang. Sebuah activity setidaknya harus memiliki minimal satu class java atau kotlin, satu layout xml dan harus terdaftar di file manifiest.xml nya. Activity mengalami siklus hidup(lifecycle) dalam beberapa status. Perpindahan status atau teransisi akan menjalankan beberapa callback yang bisa kita manfaatkan menampatkan fungsi-fungsi activity sesuai statusnya. Untuk lebih jelasnya kalian bisa membaca artikel pengenalan actitvity dari website resminya.

Membuat Base Activity

Baik! kita langsung saja ke pokok pembahasan. Silahkan kalian buka android studio kalian dan buat sebuah project Empty Activity 

Buat nama projectnya dan jangan lupa pilih kotlin untuk bahasaa pemrogramannya, karena kali ini kita akan membuat base activitynya menggunakan kotlin dan klik finish. Tenang aja, kotlin bisa disandingkan dengan java dalam satu project ko, karena sama-sama running di JVM (Java Virtual Machine).

Buat folder package baru dengan nama base dengan cara klik kanan di bagian package name, klik New dan klik Package

Kemuduan buat class BaseActivitynya dengan cara klik kanan di package folder base yang baru kita bikin tadi, klik New dan klik Kotlin File/Class.

Beri nama class dengan BaseActivity dan Jenis file berupa Class

Sekarang kita masuk ke tahap pengodingan class BaseActivitynya. Silahkan tulis code berikut didalamnya.

package com.zain.baseactivity.base
import android.app.Activity
import android.os.Bundle
import android.widget.Toast
import android.app.AlertDialog

abstract class  BaseActitvy : Activity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(setLayout())
        onCreateActivity()
    }

    override fun onDestroy() {
        super.onDestroy()
        onDestroyActivity()
    }
    abstract fun setLayout(): Int
    abstract fun onCreateActivity()
    abstract fun onDestroyActivity()

    //-------Buat fungsi-fungsi kalian dibawah sini--------
    
    //Memanggil Toast menjadi lebih sederhana
    fun showToast(message :String) {
        Toast.makeText(this,message,Toast.LENGTH_LONG)
    }
    //Membuat simple alertDialog
    fun showAlertDialogYesNo(message: String,action:() -> Unit){
        val builder = AlertDialog.Builder(this)
        builder.setCancelable(false)
        builder.setMessage("Do you want to Exit?")
        builder.setPositiveButton("Yes") { _, _ ->
            action()
        }
        builder.setNegativeButton("No") { dialog, _ ->
            dialog.cancel()
        }
        val alert = builder.create()
        alert.show()
    }

}

Baik kita jelaskan tiap baris code diatas.

abstract class  BaseActitvy : Activity()

Disni kita membuat class BaseActivity tadi mejadi abstract class agar class tersebut tidak bisa langsung di create sebagai object tapi harus di extance ke class turunan. Class BaseActivity juga sebenernya memarisi dari class Activity(). Sehingga stukturnya menjadi seperti ini.

Activity  > BaseActivity > [Acitvity Kita]

override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(setLayout())
        onCreateActivity()
}

override fun onDestroy() {
	super.onDestroy()
	onDestroyActivity()
}
abstract fun setLayout(): Int
abstract fun onCreateActivity()
abstract fun onDestroyActivity()

Kita juga memodifikasi cara pemanggilan callback onCreate menjadi abstract onCreatedActivity(), cara membinding layout menjadi method setLayout dan callback onDestroy menjadi abstract onDestroyActivity. Kenapa buat menjadi abstract method? tujuannya adalah agar mehtode tersebut harus diimplementasi di class turunannya.

fun showToast(message :String) {
 ...
}
fun showAlertDialogYesNo(message: String,action:() -> Unit){
...
}

Dan terakhir kita memberikan fungsi-fungsi tambahan seperti showToat dan showAlertDialogYesNo. agar ketika kita ingin membuat Toast atau AlertDialog kita tidak perlu menulis code yang panjang, hanya cukup memanggil fungsi-fungsi tersebut. Kalian juga bisa menambah fungsi-fungsi penting lainnya.

Cara Menggunakan Class BaseActivity

Disini saya akan menunjukan code sebelum dan sesudah menggunkan BaseActivty,
1. Sebelum menggunakan BaseActivity:

class MainActivity : Activity() {

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

        val builder = AlertDialog.Builder(this)
        builder.setCancelable(false)
        builder.setMessage("NewbieeStar.com")
        builder.setPositiveButton("Yes") { _, _ ->
            showMessage()
        }
        builder.setNegativeButton("No") { dialog, _ ->
            dialog.cancel()
        }
        val alert = builder.create()
        alert.show()
    }
    fun showMessage()
    {
        Toast.makeText((this),"Yesss Oke",Toast.LENGTH_LONG)
    }
}

2. Setelah mengimplementasikan BaseActivity

class MainActivity : BaseActitvy() {
    override fun setLayout(): Int =R.layout.activity_main

    override fun onCreateActivity() {
        showAlertDialogYesNo("Newbieestar.com",this::showMessage)
    }

    override fun onDestroyActivity() {

    }
    fun showMessage()
    {
        showToast("Yesss Oke")
    }
}

Gimana sobat? baris code di dalam MainActivity menjadi lebih sedikutkan?. Kalian juga bisa membuat Base Fragment, Base Adapter untuk RecyleView dan yang lainnya.

Terimakasih sudah mampir di artikel cara membuat Base Activity. Jangan lupa di share jika kalian merasa artikel ini bermanfaat, kalau ada pertanyaan silahkan tulis di kolom komentar. Good luck 

Tags: #android #kotlin #activity
Bagikan :

Komentar:

Silahkan berkomentar dengan baik dan bijak!

Name * :
Email :
Website :
Comment :


This website uses cookies to ensure you get the best experience on our website

learn more