Faiz haq noviandra ciptadi putra

5025211132

Tugas 6

Aplikasi Kalkulator Konversi Mata Uang

Pada artikel ini, saya akan menjelaskan langkah-langkah pembuatan aplikasi konversi mata uang menggunakan Kotlin. Aplikasi ini memungkinkan pengguna untuk mengkonversi nilai mata uang dengan antarmuka yang intuitif dan modern.

Fitur Aplikasi

  • Konversi nilai antar 6 mata uang berbeda (IDR, USD, EUR, JPY, GBP, SGD)
  • Tampilan kurs mata uang secara real-time
  • Antarmuka pengguna yang responsive dengan Material Design 3
  • Tombol untuk menukar mata uang dengan cepat

Struktur Proyek

Sebelum masuk ke penjelasan kode, mari kita lihat struktur proyek aplikasi:

Struktur proyek mengikuti pola arsitektur yang baik dengan pembagian direktori berdasarkan fungsi:

  • components: Berisi komponen UI yang dapat digunakan kembali seperti CurrencyDropdown dan CurrencyInput
  • data: Berisi repository untuk mengelola data mata uang dan konversi
  • model: Berisi definisi model data seperti Currency
  • screens: Berisi screen utama aplikasi yaitu ConverterScreen
  • ui.theme: Berisi definisi tema, warna, dan tipografi aplikasi

Penjelasan Potongan Kode

1. Inisialisasi UI

kotlin
setContent { KonversiMataUangTheme { Scaffold(modifier = Modifier.fillMaxSize()) { innerPadding -> CurrencyConverter(modifier = Modifier.padding(innerPadding)) } } }

Bagian ini mengatur tampilan utama aplikasi dengan tema tertentu. Komponen CurrencyConverter dipanggil sebagai konten utama dalam struktur Scaffold.


2. Deklarasi Variabel State


var amount by remember { mutableStateOf("") } var fromCurrency by remember { mutableStateOf("IDR") } var toCurrency by remember { mutableStateOf("USD") } var result by remember { mutableStateOf("") }

Variabel ini menyimpan data dinamis: input jumlah uang, pilihan mata uang awal dan tujuan, serta hasil konversi.


3. Fungsi Nilai Tukar


fun getConversionRate(from: String, to: String): Double { return when (from to to) { "IDR" to "USD" -> 0.000065 "USD" to "IDR" -> 15400.0 ... else -> 1.0 } }

Fungsi ini menentukan nilai tukar tetap antara kombinasi mata uang yang berbeda. Bisa dikembangkan menjadi dinamis dengan mengambil data dari API di masa depan.


4. Perhitungan Real-Time


LaunchedEffect(amount, fromCurrency, toCurrency) { if (amount.isNotBlank()) { val rate = getConversionRate(fromCurrency, toCurrency) val cleanAmount = amount.replace(".", "").replace(",", ".") val amountDouble = cleanAmount.toDoubleOrNull() ?: 0.0 result = String.format("%.2f", amountDouble * rate) } else { result = "" } }

Saat input jumlah uang atau pilihan mata uang berubah, LaunchedEffect akan secara otomatis menghitung ulang hasil konversi berdasarkan nilai tukar tetap dan memperbarui tampilan.




Komentar

Postingan populer dari blog ini

TUGAS 1 KALKULATOR PBKK-B

Infografis Mengenai Teknologi Perangkat Bergerak

Tugas Pertemuan 5 PPB - Membuat Aplikasi Kalkulator dengan menggunakan Kotlin(BMI Kalkulator)