Tutorial Belajar If-Then Menggunakan Kotlin di Android

Halo semuanya, melanjutkan tutorial saya tentang belajar Kotlin, jika sebelumnya kita telah coba belajar membuat aplikasi Hello World Kotlin, inisialisasi View menggunakan Kotlin dan konsep activity-intent menggunakan Kotlin di Android. Kali ini kita akan membahas bagaimana menggunakan conditional operator (switch-case, if-then) pada Kotlin di Android.

Conditional Operator pada Kotlin

Pada Kotlin ada dua jenis conditional operator yang masuk ke dalam kategori control flow. Yaitu :

  • if…then (if then biasa seperti di Java)
  • when (pengganti switch…case, operator paling fleksibel)

Pre-requisites

Oke sebelum kita memulai coding, ada baiknya kalian membaca dahulu tutorial di bawah ini :

Setalah itu, kalian bisa replace file activity_main.xml pada project Kotlin Android kalian dengan code di bawah ini :

activity_main.xml

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

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Select Gender : " />

    <RadioGroup
        android:id="@+id/rg_gender"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">

        <RadioButton
            android:id="@+id/rb_male"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:text="Male" />

        <RadioButton
            android:id="@+id/rb_female"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Female" />
    </RadioGroup>

    <Button
        android:id="@+id/bt_submit"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="Submit" />

</LinearLayout>

 

Jika sudah untuk class MainActivity.java nya kalian bisa replace dengan kode di bawah ini :

MainActivity.java

package co.twoh.kotlin.twohkotlin

import android.content.Context
import android.content.Intent
import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import android.widget.Button
import android.widget.RadioGroup
import android.widget.Toast

class MainActivity : AppCompatActivity() {

    private lateinit var rgGender : RadioGroup
    private lateinit var btSubmit : Button

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

        btSubmit = findViewById(R.id.bt_submit)
        rgGender = findViewById(R.id.rg_gender)

        btSubmit.setOnClickListener{
            val selectedId : Int = rgGender.checkedRadioButtonId

            if(selectedId == R.id.rb_male){
                Toast.makeText(this, "Selected Male", Toast.LENGTH_SHORT).show()
            }else{
                Toast.makeText(this, "Selected Female", Toast.LENGTH_SHORT).show()
            }

            when(selectedId){
                R.id.rb_male -> Toast.makeText(this, "Selected Male", Toast.LENGTH_SHORT).show()
                R.id.rb_female -> Toast.makeText(this, "Selected Female", Toast.LENGTH_SHORT).show()
            }
        }
    }
}

Kode di atas pada intinya hanya berisi dua buah RadioButton berisi pilihan gender/jenis kelamin. Dan ketika tombol diklik maka gender yang kita pilih akan ditampilkan pada Toast.

Dan jika dilihat, kita menggunakan dua buah conditional operator di atas, yaitu :

  • if-then
                if(selectedId == R.id.rb_male){
                    Toast.makeText(this, "Selected Male", Toast.LENGTH_SHORT).show()
                }else{
                    Toast.makeText(this, "Selected Female", Toast.LENGTH_SHORT).show()
                }
    
  • when
                when(selectedId){
                    R.id.rb_male -> Toast.makeText(this, "Selected Male", Toast.LENGTH_SHORT).show()
                    R.id.rb_female -> Toast.makeText(this, "Selected Female", Toast.LENGTH_SHORT).show()
                }
    

Pada code di atas kita menggunakan when yang memeriksa value dari integer id yang diinputkan. Dalam prakteknya ada beberapa jenis when operator di Kotlin, yaitu :

  • When yang menandakan suatu fungsi sukses diekskusi atau tidak
    when (x) {
        parseInt(s) -> print("s encodes x")
        else -> print("s does not encode x")
    }
    
  • When yang mengecek value dalam range
    when (x) {
        in 1..10 -> print("x is in the range")
        in validNumbers -> print("x is valid")
        !in 10..20 -> print("x is outside the range")
        else -> print("none of the above")
    }
    
  • When yang mengecek tipe data dari suatu value
    when(x) {
        is String -> x.startsWith("prefix")
        else -> false
    }
    
  • When tipe standar yang mengecek value seperti contoh kodingan di atas

Lebih lengkapnya bisa baca di sini.

That’s all. Jika aplikasi sudah selesai sekarang bisa kita cek demonya.

Demo

Kotlin If Then

Kotlin If Then | (c) Instagram

Bisa dilihat pada gambar di atas, ketika kita memilih Female dan klik Submit, maka value dari Toast akan menyesuaikan dengan apa yang kita pilih.

That’s all ! Semoga membantu. 🙂 Jangan lupa untuk clone project nya sebagai Android Studio module di GitHub saya, dengan terlebih dahulu follow dan star project tersebut. Silahkan bertanya di bagian komentar jika ada yang kurang jelas. 😀





Download aplikasi kami di Google Play Store


Tutorial Menarik Lainnya :

Leave a Reply

Do NOT follow this link or you will be banned from the site!