Tugas 4 PPB Membuat Aplikasi Dice Roller
Nama : Halyusa Ard Wahyudi
NRP : 5025201088
Kelas : PPB-F
Tugas kali ini adalah membuat aplikasi Dice Roller pada perangkat bergerak dengan menggunakan Jetpack Compose yang dijalankan melalui Android Studio. Berikut adalah tampilan dan source code dari program yang saya buat:
Dice Roller
import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.foundation.Image import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.wrapContentSize import androidx.compose.material3.Button import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.stringResource import androidx.compose.ui.tooling.preview.Preview import com.example.diceroller.ui.theme.DiceRollerTheme class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { DiceRollerTheme { DiceRollerApp() } } } } @Preview @Composable fun DiceRollerApp(){ DiceWithButtonAndImage(modifier = Modifier .fillMaxSize() .wrapContentSize(Alignment.Center)) } @Composable fun DiceWithButtonAndImage(modifier: Modifier = Modifier) { var result by remember { mutableStateOf(1) } val imageResource = when (result) { 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( modifier = modifier, horizontalAlignment = Alignment.CenterHorizontally ){ Image(painter = painterResource(id = imageResource), contentDescription = result.toString()) Button( onClick = { result = (1..6).random() }) { Text(stringResource(R.string.roll)) } } }
Comments
Post a Comment