Aplikasi Dice Roller
Tugas Pertemuan 4: Membuat Aplikasi Dice Roller Sederhana
Nama: Muhammad Rafi Budi Purnama
NRP: 5025221307
Kelas: PPB A
ini dibuat mengikuti tutorial dari link-ini
1. Deskripsi Aplikasi
Aplikasi Dice Roller ini memungkinkan pengguna untuk "melempar" dadu secara virtual dengan menekan sebuah tombol. Ketika tombol ditekan, gambar dadu akan berubah secara acak sesuai angka 1 hingga 6.
2. Struktur Kode dan Penjelasannya
MainActivity.kt
class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) enableEdgeToEdge() setContent { DiceRollerTheme { DiceApp() } } }}
MainActivityadalah titik awal aplikasi.-
Fungsi
enableEdgeToEdge()digunakan untuk membuat tampilan aplikasi meluas hingga ke tepi layar. -
setContentakan menampilkan UI utama, dengan menerapkanDiceRollerTheme. -
DiceApp()adalah composable function yang memuat seluruh tampilan aplikasi.
DiceApp.kt
@Preview(showBackground = true)@Composablefun DiceApp() { DiceContent( modifier = Modifier .fillMaxSize() .wrapContentSize(Alignment.Center) )}
Anotasi
@Previewmemungkinkan tampilan UI dilihat langsung dari editor Android Studio.-
Fungsi
DiceApp()akan memanggilDiceContent()yang berisi elemen utama seperti gambar dadu dan tombol.
DiceContent.kt
@Composablefun DiceContent(modifier: Modifier = Modifier) { var diceValue by remember { mutableStateOf(1) }
val diceImage = when (diceValue) { 1 -> R.drawable.dice_1 2 -> R.drawable.dice_2 3 -> R.drawable.dice_3 4 -> R.drawable.dice_4 5 -> R.drawable.dice_5 else -> R.drawable.dice_6 }
Column( horizontalAlignment = Alignment.CenterHorizontally, modifier = modifier ) { Image( painter = painterResource(id = diceImage), contentDescription = "Gambar Dadu" ) Spacer(modifier = Modifier.height(16.dp)) Button(onClick = { diceValue = (1..6).random() }) { Text(text = "Lempar Dadu") } }}
@Composablemenunjukkan bahwa fungsi ini membangun UI menggunakan Jetpack Compose.-
diceValuemenyimpan angka hasil lemparan dadu, dan menggunakanrememberagar nilai tidak hilang saat UI direkomposisi. -
whendigunakan untuk menentukan gambar dadu yang sesuai dengan angka yang dihasilkan. -
Columndigunakan untuk menyusun elemen secara vertikal. -
Imagemenampilkan gambar dadu. -
Spacermemberi jarak antar elemen. -
Buttondengan aksionClickakan menghasilkan angka acak dari 1 sampai 6, dan otomatis memperbarui gambar dadu.
3. Tambahan: Menambahkan Gambar Dadu
-
Buka Resource Manager dari Android Studio (View > Tool Windows > Resource Manager).
-
Klik + > Import Drawables.
-
Pilih enam gambar dadu (dice_1 hingga dice_6) yang telah disediakan.
-
Klik Import.
4. Hasil Tampilan
Aplikasi akan menampilkan gambar dadu di tengah layar dan tombol "Lempar Dadu" di bawahnya. Saat tombol ditekan, gambar akan berubah sesuai angka acak dari 1 hingga 6.
Komentar
Posting Komentar