TUGAS PERTEMUAN 3 PPB (A) - APLIKASI SELAMAT ULANG TAHUN
Nama: Arif Nugraha Santosa
NRP: 5025211048
Kelas: Pemrograman Perangkat Bergerak (A)
Tahun Ajaran: 2024 (Genap)
Membuat Aplikasi Ulang Tahun
Pada pertemuan kali ini, saya merancang sebuah aplikasi sederhana berjudul Happy Birthday. Berikut cuplikannya!
Berikut adalah cuplikan kodenya:
package com.example.tugas3_happybirthday
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.padding
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import com.example.tugas3_happybirthday.ui.theme.Tugas3HappyBirthdayTheme
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
Tugas3HappyBirthdayTheme {
Surface(
modifier = Modifier.fillMaxSize(),
color = MaterialTheme.colorScheme.background
) {
GreetingText(
message = "Happy Birthday Arif!!",
from = "From Serly",
modifier = Modifier.padding(8.dp)
)
}
}
}
}
}
@Composable
fun GreetingText(message: String, from: String, modifier: Modifier = Modifier) {
Column(
verticalArrangement = Arrangement.Center,
modifier = modifier
) {
Text(
text = message,
fontSize = 100.sp,
lineHeight = 116.sp,
textAlign = TextAlign.Center
)
Text(
text = from,
fontSize = 36.sp,
modifier = Modifier
.padding(16.dp)
.align(alignment = Alignment.End)
)
}
}
@Preview(showBackground = true)
@Composable
fun GreetingPreview() {
Tugas3HappyBirthdayTheme {
GreetingText(message = "Happy Birthday Arif!!", from = "From Serly")
}
}
MainActivity sebagai entry point aplikasi yang mewarisi ComponentActivity. Pada metode onCreate, fungsi setContent digunakan untuk menampilkan UI dengan tema Tugas3HappyBirthdayTheme. Elemen utama dalam UI adalah Surface yang memenuhi layar dan memiliki warna latar belakang sesuai tema Material Design. Di dalamnya, fungsi GreetingText dipanggil untuk menampilkan pesan ulang tahun.
Fungsi GreetingText adalah fungsi @Composable yang bertanggung jawab untuk menampilkan teks ucapan ulang tahun. Fungsi ini menggunakan Column dengan verticalArrangement = Arrangement.Center agar kontennya tersusun secara vertikal di tengah. Ada dua elemen Text, satu untuk pesan utama dengan ukuran font 100 sp dan satu lagi untuk nama pengirim dengan ukuran 36 sp, yang ditempatkan di sudut kanan bawah menggunakan align(alignment = Alignment.End).
Selain itu, ada fungsi @Preview bernama GreetingPreview, yang memungkinkan pengembang melihat tampilan UI di editor tanpa menjalankan aplikasi. Fungsi ini memanggil GreetingText dengan contoh teks "Happy Birthday Arif!!" dari "From Serly". Dengan struktur ini, aplikasi dapat dengan mudah menampilkan ucapan ulang tahun dengan desain yang bersih dan responsif.
Link Github: 9ninelie/Tugas-3-Happy-Birthday


Comments
Post a Comment