Tugas 2 PPB

 

TUGAS 2 PPB

PROJEK PERTAMA JETPACK COMPOSE - GREETING


Nama: Muhammad Lintang Panjerino

NRP: 5025201045

Kelas: PPB I

Tahun: 2024

Link Github: Tugas 2 - Greeting


Pada Tugas 2 PPB, diberikan tugas untuk membuat projek pertama aplikasi mobile sederhana dengan Jetpack Compose. Projek pertama yang dibuat adalah projek sederhana untuk memperkenalkan diri. Projek ini hanya mengubah sedikit dari template awal yang sudah disediakan. Pada projek ini, digunakan software berupa Android Studio dan memakai bahasa Kotlin. Berikut adalah langkah untuk mengerjakan projek ini

Setelah membuat projek baru pada Android Studio, tampilan akan langsung diarahkan ke file MainActivity.kt yang merupakan file utama projek yang dapat digunakan untuk mengubah dan memodifikasi projek.


Untuk melihat tampilan sementara dari aplikasi Android yang dibuat, dapat melakukan preview dengan menggunakan emulator dari Android Studio. Caranya adalah dengan memilih menu "Device Manager" di sebelah kanan sisi Android Studio, kemudian memilih tipe device dan juga versi image Android. Setelah itu, aplikasi dapat dijalankan dengan memilih menu "Run 'app'".


Selanjutnya, fungsi Greeting diisi dengan perkenalan singkat dan sederhana. Untuk mengubahnya, pertama isi parameter yang dibutuhkan, seperti "title", "name", "nrp", dan "kelas". Setelah itu, isi body function dengan layout dan isi teks yang diinginkan. Di setiap teks, dapat dilakukan kustomisasi dengan memasukkan beberapa properti seperti "Font Familiy", "Font Size",  dan "Color". Kemudian, dilakukan pemanggilan fungsi Greeting di dalam class MainActivity dan fungsi GreetingPreview dengan mengisi value yang akan ditampilkan.

Setelah dilakukan "Run 'app'" ulang, maka emulator/virtual device akan tampil seperti berikut



Berikut adalah potongan kode sumber file MainActivity.kt

package com.example.basiclayouts

import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxSize
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.graphics.Color
import androidx.compose.ui.text.font.FontFamily
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.sp
import com.example.basiclayouts.ui.theme.BasicLayoutsTheme

class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
BasicLayoutsTheme {
// A surface container using the 'background' color from the theme
Surface(modifier = Modifier.fillMaxSize(), color = MaterialTheme.colorScheme.background) {
Greeting("Android", "Lintang", "5025201045", "PPB-I")
}
}
}
}
}

@Composable
fun Greeting(title: String, name: String, nrp: String, kelas: String, modifier: Modifier = Modifier) {
Column(
modifier = Modifier.fillMaxSize(),
horizontalAlignment = Alignment.CenterHorizontally
) {
Text(
fontFamily = FontFamily.SansSerif,
fontSize = 40.sp,
color = Color.Red,
text = "Hello $title!",
)
Text(
fontFamily = FontFamily.Serif,
fontSize = 36.sp,
color = Color.Cyan,
text = "Name: $name"
)
Text(
fontFamily = FontFamily.Serif,
fontSize = 36.sp,
color = Color.Cyan,
text = "NRP: $nrp"
)
Text(
fontFamily = FontFamily.Serif,
fontSize = 36.sp,
color = Color.Cyan,
text = "Kelas: $kelas"
)
}
}

@Preview(showBackground = true)
@Composable
fun GreetingPreview() {
BasicLayoutsTheme {
Greeting("Android", "Lintang", "5025201045", "PPB-I")
}
}


Komentar

Postingan populer dari blog ini

Tugas 9 PPB

ETS PPB

Tugas 10 PPB