TUGAS 6 PPB
Penerapan Tema MaterialAplikasi Woof
Deskripsi Singkat Aplikasi
Aplikasi "Woof" adalah platform yang menyediakan berbagai fitur untuk membantu pemilik hewan peliharaan, khususnya anjing, dalam manajemen perawatan, interaksi sosial, pelatihan, pencarian layanan, dan pencocokan adopsi. Dengan menggabungkan jadwal perawatan, grup diskusi, tutorial pelatihan, pencarian layanan terdekat, dan fasilitasi adopsi hewan, Woof bertujuan untuk menjadi satu-satunya aplikasi yang diperlukan oleh pecinta hewan peliharaan untuk merawat dan menghubungkan dengan komunitas hewan peliharaan mereka. Pada pembahasan kali ini, mata kuliah pembelajaran Pemrograman Perangkat Bergerak Aplikasi ini menjelaskan terkait penerapan tema material pada aplikasi Woof, dimana terdapat 2 penerapan tema material, yakni penerapan ketika tema terang dan tema gelap yang pada prinsipnya bertujuan untuk meningkatkan pengalaman pengguna dengan memberikan desain antarmuka yang konsisten, menarik, dan intuitif dalam aplikasi Android. Penerapan tema material dapat membantu menciptakan aplikasi yang terasa modern, mudah dipahami, dan menyenangkan untuk digunakan. Berikut merupakan langkah-langkah penerapan pembuatan aplikasi Woof.
Mempelajari Kode Awal
- Buka kode di Android Studio.
- Buka com.example.woof > data > Dog.kt berisi
Dog data class
yang akan digunakan untuk mewakili foto, nama, usia, dan hobi anjing serta berisi daftar anjing dan informasi yang akan digunakan sebagai data di aplikasi. - Buka res > drawable. File ini berisi semua aset gambar yang dibutuhkan untuk aplikasi "Woof", termasuk ikon aplikasi, gambar anjing, dan ikon.
- Buka res > values > strings.xml. File ini berisi string yang digunakan dalam aplikasi ini, termasuk nama aplikasi, nama anjing, deskripsinya, dan lainnya.
- Buka MainActivity.kt. File ini berisi kode untuk membuat daftar sederhana yang menampilkan foto anjing, nama anjing, dan usia anjing tersebut.
WoofApp()
berisiLazyColumn
yang menampilkanDogItem
.DogItem()
berisiRow
yang menampilkan foto anjing dan informasi tentangnya.DogIcon()
menampilkan foto anjing.DogInformation()
menampilkan nama dan usia anjing.WoofPreview()
memungkinkan melihat pratinjau aplikasi di panel Design.
Memastikan Emulator/Perangkat Bertema Terang
Dalam pembuatan aplikasi "Woof", akan menggunakan tema terang dan gelap, tetapi sebagian besar codelab ini menggunakan tema terang. Untuk melihat aplikasi dalam tema terang, di emulator atau perangkat fisik :
Dalam pembuatan aplikasi "Woof", akan menggunakan tema terang dan gelap, tetapi sebagian besar codelab ini menggunakan tema terang. Untuk melihat aplikasi dalam tema terang, di emulator atau perangkat fisik :
- Buka aplikasi Setelan di perangkat.
- Telusuri Tema gelap dan klik di dalamnya.
- Jika Tema gelap aktif, nonaktifkan.
Menambahkan Warna
- Buka file Color.kt dan ganti konten dengan kode di bawah ini untuk menyalin dalam skema warna baru.
- Buka file Theme.kt dan ganti konten dengan kode di bawah ini untuk menambahkan warna baru ke tema.
- Melihat pratinjau aplikasi.
Pemetaan Warna
- Dalam fungsi composable
DogItem()
, gabungkanRow()
denganCard()
. - Karena
Card
kini merupakan composable turunan pertama diDogItem()
, teruskan pengubah dariDogItem()
keCard
, dan update pengubahRow
ke instance baruModifier
. - Lihat
WoofPreview()
. Item daftar sekarang telah otomatis berubah warna karena ComposableCard
. Warnanya terlihat bagus, tetapi tidak ada spasi di antara item daftar.
File Dimensi
- Di
WoofApp()
, tambahkanmodifier
denganpadding_small
dalam panggilan keDogItem()
. - Lihat
WoofPreview()
, sekarang ada lebih banyak definisi di antara item daftar.
Tema Gelap
- Di bagian
WoofPreview()
, buat fungsi baru bernamaWoofDarkThemePreview()
dan anotasikan dengan@Preview
dan@Composable
. - Di dalam
DarkThemePreview()
, tambahkanWoofTheme()
tanpa menambahkanWoofTheme()
, Tetapkan parameterdarkTheme
ke true. - Panggil
WoofApp()
di dalamWoofTheme()
.
Warna Dinamis
- Untuk mengaktifkan warna dinamis, buka Theme.kt dan buka composable
WoofTheme()
, lalu setel parameterdynamicColor
ke benar. - Codelab ini berfokus pada tema kustom, jadi nonaktifkan
dynamicColor
sebelum melanjutkan. - Melihat pratinjau aplikasi.
perbedaan tampilan dengan penerapan tema yang berbeda
Menambahkan Bentuk
- Buka file Shape.kt dan perhatikan bahwa parameter kecil ditetapkan ke
RoundedCornerShape(50.dp)
. Ini akan digunakan untuk membentuk gambar menjadi lingkaran. - Buka MainActivity.kt. Di
DogIcon()
, tambahkan atributclip
kemodifier
dariImage
; tindakan ini akan memotong gambar menjadi sebuah bentuk. TeruskanMaterialTheme.shapes.small
.Saat melihat pratinjau aplikasi, maka akan melihat ikon gambar anjing tersebut menjadi lingkaran. Namun, beberapa foto terpotong di bagian samping dan tidak muncul sebagai lingkaran sepenuhnya. - Untuk membuat semua foto menjadi lingkaran, tambahkan atribut
ContentScale
danCrop
; tindakan ini akan memangkas gambar agar sesuai. Perlu diketahui bahwacontentScale
adalah atribut dariImage
, dan bukan bagian darimodifier
. - Sekarang di
WoofPreview()
, ikon berbentuk lingkaran.
Menambahkan Bentuk Ke Item Dasar
- Buka file Shape.kt.
Card
adalah komponen media, sehingga Anda menambahkan parameter media objekShapes
. Untuk aplikasi ini, pojok kanan atas dan kiri bawah item daftar, tetapi tidak membentuk lingkaran penuh. Untuk mencapainya, teruskan16.dp
ke atributmedium
.
Menambahkan Tipografi
- Di tampilan project Android Studio, klik kanan folder res.
- Pilih New > Android Resource Directory.
- Beri nama Direktori font, setel jenis Resource sebagai font, dan klik OK.
- Buka direktori resource font baru yang terletak di res > font.
Mendownload Font Kustom
- Buka https://fonts.google.com/.
- Telusuri Montserrat, lalu klik Download family.
- Buka file zip.
- Buka folder Montserrat yang didownload. Di folder static, temukan Montserrat-Bold.ttf dan Montserrat-Regular.ttf (ttf adalah singkatan dari TrueType Font dan merupakan format untuk file font). Pilih kedua font dan tarik ke direktori resource font dalam project Anda di Android Studio.
- Di folder font, ganti nama Montserrat-Bold.ttf menjadi montserrat_bold.ttf dan ganti nama Montserrat-Regular.ttf menjadi montserrat_regular.ttf.
- Telusuri Abril Fatface dan klik Download family.
- Buka folder Abril_Fatface yang telah didownload. Pilih AbrilFatface-Regular.ttf, lalu tarik ke direktori resource font.
- Di folder font, ganti nama Abril_Fatface_Regular.ttf menjadi abril_fatface_regular.ttf.
Melakukan Inisialisasi Font
- Di jendela project, buka ui.theme > Type.kt. Lakukan inisialisasi font yang didownload di bawah pernyataan impor dan di atas
Typography
val
. Pertama, lakukan inisialisasi Abril Fatface dengan menyetelnya sama denganFontFamily
dan meneruskanFont
dengan file fontabril_fatface_regular
. - Lakukan inisialisasi Montserrat, di bawah Abril Fatface, dengan menyetelnya sama dengan
FontFamily
dan meneruskanFont
dengan file fontmontserrat_regular
. Untukmontserrat_bold
, sertakan jugaFontWeight.Bold
. Meskipun Anda meneruskan file font versi cetak tebal, Compose tidak mengetahui bahwa file tersebut dicetak tebal, jadi Anda perlu menautkan file secara eksplisit keFontWeight.Bold
. - Untuk atribut
displayLarge
, tetapkan sama denganTextStyle
, lalu isifontFamily
,fontWeight
, danfontSize
dengan informasi dari tabel di atas. Artinya, semua teks yang ditetapkan kedisplayLarge
akan memiliki Abril Fatface sebagai font, dengan ketebalan font normal, danfontSize
36.sp
.
Menambahkan Tipografi Ke Teks Aplikasi
- Tambahkan
displayMedium
sebagai gaya untukdogName
karena merupakan informasi singkat yang penting. TambahkanbodyLarge
sebagai gaya untukdogAge
karena berfungsi cukup baik dengan ukuran teks yang lebih kecil. - Sekarang di
WoofPreview()
, nama anjing akan menampilkan font Montserrat tebal dalam20.sp
, dan usia anjing menampilkan font Montserrat normal dalam14.sp
.
Menambahkan Panel Atas
Di MainActivity.kt, buat composable bernama WoofTopAppBar().
Hasil
Penerapan tema terang
Penerapan tema gelap
Link Github
Komentar
Posting Komentar