Pertemuan 3 PPB (B) - 11/03/2026

Tugas Pertemuan 3 PPB B 2026
Tugas Pertemuan 3 PPB B 2026
Nama  : Triana Velia Hutabalian
NRP   : 5025231190
Kelas  : PPB(B)

Pada pertemuan ketiga ini, kami mengerjakan latihan dari CodeLab Android Basics with Compose yaitu membuat aplikasi Happy Birthday. Aplikasi ini menampilkan ucapan ulang tahun di layar menggunakan Jetpack Compose dengan composable Text, Column, dan Modifier.

1
Membuat project baru di Android Studio dengan template Empty Activity, nama project Happy Birthday, dan Minimum SDK API 24 (Nougat).
2
Menghapus fungsi Greeting() bawaan dan membuat fungsi composable baru bernama GreetingText() yang menerima dua parameter: message dan from.
3
Menambahkan dua composable Text di dalam Column — satu untuk pesan ulang tahun dengan ukuran font 100.sp, dan satu untuk nama pengirim dengan ukuran 36.sp.
4
Mengatur tata letak dengan verticalArrangement = Arrangement.Center agar konten berada di tengah layar, serta textAlign = TextAlign.Center pada teks utama.
5
Menambahkan .align(Alignment.End) dan .padding(16.dp) pada teks pengirim agar tampil rata kanan di bagian bawah.
6
Menjalankan aplikasi di emulator Pixel 6 API 34 dan memverifikasi hasilnya sesuai target CodeLab.
MainActivity.kt
package com.example.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.happybirthday.ui.theme.HappyBirthdayTheme

class MainActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            HappyBirthdayTheme {
                Surface(
                    modifier = Modifier.fillMaxSize(),
                    color = MaterialTheme.colorScheme.background
                ) {
                    GreetingText(
                        message = "Happy Birthday Sam!",
                        from = "From Emma",
                        modifier = Modifier.padding(all = 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 BirthdayCardPreview() {
    HappyBirthdayTheme {
        GreetingText(message = "Happy Birthday Sam!", from = "From Emma")
    }
}
📸 Hasil Output
MainActivity.kt — Android Studio · Pixel 6 API 34
Screenshot Happy Birthday App di Android Studio

Komentar

Postingan populer dari blog ini

Pertemuan 4&5 PPB (B) - 25/03/2026

Pertemuan 2 PPB (B) - 04/03/2026

Pertemuan 7 - 08/04/2026