Membuat aplikasi Birthday Card

1. Pengantar

Dalam codelab ini, Anda akan membangun aplikasi Android sederhana yang menampilkan teks. Anda akan dapat memosisikan teks di layar dengan memahami lebih lanjut komponen Antarmuka Pengguna (UI) di Android.

Prasyarat

  • Cara membuat aplikasi baru di Android Studio.
  • Cara menjalankan aplikasi di emulator atau perangkat Android Anda.

Yang akan Anda pelajari

  • Apa yang dimaksud dengan elemen antarmuka pengguna, seperti Views dan ViewGroups.
  • Cara menampilkan teks di TextView dalam aplikasi.
  • Cara menetapkan atribut, seperti teks, font, dan margin pada TextView.

Yang akan Anda bangun

  • Aplikasi Android yang menampilkan ucapan selamat ulang tahun dalam format teks.

Seperti inilah tampilan aplikasi Anda saat selesai.

dec50a075480d2ff.png

Yang Anda perlukan

  • Komputer yang dilengkapi Android Studio.

2. Menyiapkan aplikasi Happy Birthday

Membuat project Empty Activity

  1. Untuk memulai, buat project Kotlin baru di Android Studio menggunakan template Empty Activity.
  2. Beri nama aplikasi "Happy Birthday", dengan level API minimum 19 (KitKat).

Penting: Jika Anda belum memahami cara membuat project baru di Android Studio, lihat Membuat dan menjalankan aplikasi Android pertama Anda untuk mengetahui detailnya.

30a171ff53cba940.png

  1. Jalankan aplikasi Anda. Aplikasi akan terlihat seperti screenshot di bawah.

7253111e53c87473.png

Saat Anda membuat aplikasi Happy Birthday ini dengan template Empty Activity, Android Studio menyiapkan resource untuk aplikasi Android dasar, termasuk pesan "Hello World!" (Halo Dunia!) di tengah layar. Dalam codelab ini, Anda akan mempelajari bagaimana cara pesan tersebut dimunculkan, cara mengubah teksnya menjadi ucapan selamat ulang tahun, dan cara menambahkan serta memformat pesan tambahan.

Tentang antarmuka pengguna

Antarmuka pengguna (UI) aplikasi adalah tampilan visual yang Anda lihat di layar: teks, gambar, tombol, dan berbagai jenis elemen lainnya. Seperti itulah cara aplikasi menampilkan berbagai hal kepada pengguna, dan cara pengguna berinteraksi dengan aplikasi.

Setiap elemen ini disebut View. Hampir semua yang Anda lihat di layar aplikasi Anda adalah View. Views dapat bersifat interaktif, seperti tombol yang dapat diklik atau kolom input yang dapat diedit.

Dalam codelab ini, Anda akan menggunakan jenis View untuk menampilkan teks dan disebut TextView.

Views di aplikasi Android tidak hanya mengambang di layar dengan sendirinya. Views memiliki hubungan satu sama lain. Misalnya, gambar mungkin berada di samping beberapa teks, dan tombol dapat membentuk baris. Untuk mengatur Views, Anda harus memasukkannya ke dalam penampung. ViewGroup adalah tempat untuk menampung objek View, dan penampung ini bertanggung jawab untuk mengatur Views di dalamnya. Pengaturan posisi, atau tata letak, dapat berubah mengikuti ukuran dan rasio aspek layar perangkat Android tempat aplikasi berjalan, dan tata letak dapat menyesuaikan sendiri terlepas perangkat berada dalam mode potret atau lanskap.

Salah satu jenis ViewGroup adalah ConstraintLayout, yang membantu Anda mengatur Views di dalamnya dengan cara yang fleksibel.

b02cb13e267730fc.png

Tentang Layout Editor

Membuat antarmuka pengguna dengan mengatur Views dan ViewGroups adalah bagian penting dari pembuatan Aplikasi Android. Android Studio menyediakan alat bernama Layout Editor yang membantu Anda melakukannya. Anda akan menggunakan Layout Editor untuk mengubah teks "Hello World!" (Halo Dunia!) menjadi teks "Happy Birthday!" (Selamat Ulang Tahun!), lalu memberi gaya pada teks.

Saat Anda membuka Layout Editor, Anda akan melihat banyak bagian di dalamnya. Anda akan belajar menggunakan sebagian besar bagian tersebut di codelab ini. Gunakan screenshot yang disertai keterangan di bawah untuk membantu mengenali jenis-jenis jendela di Layout Editor. Anda akan mempelajari lebih lanjut setiap bagian saat membuat perubahan pada aplikasi.

  • Di sebelah kiri (1) terdapat jendela Project yang telah Anda lihat sebelumnya. Jendela Project ini mencantumkan semua file yang membentuk project Anda.
  • Di bagian tengah, Anda bisa melihat dua gambar (4) dan (5) yang mewakili tata letak layar untuk aplikasi Anda. Representasi di sebelah kiri (4) merupakan perkiraan yang mirip dengan tampilan layar Anda saat aplikasi berjalan. Representasi ini disebut tampilan Design.
  • Representasi di sebelah kanan (5) adalah tampilan Blueprint yang dapat berguna untuk operasi tertentu.
  • Palette (2) berisi daftar berbagai jenis Views yang dapat Anda tambahkan ke aplikasi.
  • Component Tree (3) adalah representasi yang berbeda dari tampilan layar Anda. Component Tree ini mencantumkan semua tampilan layar Anda.
  • Attributes ada di ujung kanan (6). Bagian ini menunjukkan atribut View dan Anda dapat mengubahnya.

Baca Layout Editor selengkapnya dan cara mengonfigurasinya di panduan referensi developer.

Berikut ini screenshot seluruh tampilan Layout Editor yang telah diberi keterangan:

fc4828e6a783234.png

Mari kita buat beberapa perubahan di Layout Editor agar aplikasi Anda lebih terlihat seperti kartu ulang tahun.

Mengubah pesan Hello World (Halo Dunia)

  1. Di Android Studio, temukan jendela Project di sebelah kiri.
  2. Perhatikan folder dan file berikut: Folder app berisi sebagian besar file untuk aplikasi yang akan Anda ubah. Folder res ditujukan untuk resource, seperti gambar atau tata letak layar. Folder layout ditujukan untuk tata letak layar. File activity_main.xml berisi deskripsi tata letak layar Anda.
  3. Luaskan folder app, lalu folder res, dan selanjutnya folder layout.
  4. Klik dua kali pada activity_main.xml. Tindakan ini akan membuka activity_main.xml di Layout Editor dan menampilkan tata letak yang dideskripsikan dalam tampilan Design.

1f64a0a2623c9380.png

  1. Lihat daftar tampilan di Component Tree. Perhatikan bahwa ada ConstraintLayout dan TextView di bawahnya. Keduanya mewakili UI aplikasi Anda. TextView diindentasi karena berada di dalam ConstraintLayout. Saat Anda menambahkan lebih banyak Views ke ConstraintLayout, Views akan ditambahkan ke daftar ini.
  2. Perhatikan bahwa TextView berisi "Hello World!" (Halo Dunia!) di sebelahnya, yaitu teks yang Anda lihat saat menjalankan aplikasi.

9f483ad72607f3b6.png

  1. Di Component Tree, klik TextView.
  2. Cari Attributes di sebelah kanan.
  3. Cari bagian Declared Attributes.
  4. Perhatikan bahwa atribut text di bagian Declared Attributes berisi Hello World! (Halo Dunia!).

de37fe1f5ed1507e.png

Atribut text menampilkan teks yang dicetak di dalam TextView.

  1. Klik atribut text yang menampilkan teks Hello World! (Halo Dunia!).
  2. Ubah menjadi Happy Birthday!, lalu tekan tombol Enter. Jika Anda kemudian melihat peringatan tentang string yang di-hardcode, jangan khawatir. Anda akan mempelajari cara menghapus peringatan tersebut di codelab berikutnya.
  3. Perhatikan bahwa teks di Design View telah berubah.....(Bagus! Anda bisa langsung lihat perubahannya.)
  4. Jalankan aplikasi, dan sekarang Anda melihat teks Happy Birthday!

233655306db5a589.png

Bagus! Anda membuat perubahan pertama pada aplikasi Android.

3. Menambahkan TextViews ke tata letak

Kartu ulang tahun yang sedang Anda buat tampak berbeda dengan kartu yang ada di aplikasi. Sebagai ganti teks kecil di tengah, Anda memerlukan dua pesan yang berukuran lebih besar: satu di kiri atas dan satu di pojok kanan bawah. Dalam tugas ini, Anda akan menghapus TextView yang ada, dan menambahkan dua TextViews baru, serta mempelajari cara memosisikannya di dalam ConstraintLayout.

Menghapus TextView saat ini

  1. Di Layout Editor, klik untuk memilih TextView di bagian tengah tata letak.

105cee362aaaceb0.png

  1. Tekan tombol Delete. Android Studio akan menghapus TextView, dan sekarang aplikasi Anda hanya menampilkan ConstraintLayout di Layout Editor dan Component Tree.

d39283af7f165541.png

Menambahkan TextView

Pada langkah ini, Anda akan menambahkan TextView di kiri atas aplikasi untuk menampung ucapan selamat ulang tahun.

452cf299739cfef7.png

Palette di kiri atas Layout Editor berisi daftar berbagai jenis Views, yang disusun berdasarkan kategori, yang dapat Anda tambahkan ke aplikasi.

  1. Cari TextView. Kode ini muncul dalam kategori Common dan kategori Text.

e23ce742cec0ab41.png

  1. Tarik TextView dari Palette ke kiri atas platform desain di Layout Editor dan lepaskan. Posisinya tidak harus sama persis, cukup letakkan di dekat sudut kiri atas.

6bbcb1bbc39df93a.gif

  1. Perhatikan bahwa ada TextView yang ditambahkan, dan perhatikan tanda seru berwarna merah di Component Tree.
  2. Arahkan kursor ke tanda seru, dan Anda akan melihat pesan yang berisi peringatan bahwa tampilan tidak dibatasi dan akan melompat ke posisi yang berbeda saat aplikasi dijalankan. Anda akan memperbaikinya di langkah berikutnya.

82be9743106923ab.png

Memosisikan TextView

Untuk kartu ulang tahun, TextView harus berada di dekat sudut kiri atas dengan ruang di sekitarnya. Untuk memperbaiki peringatan, Anda perlu menambahkan beberapa batasan ke TextView sehingga aplikasi akan tahu cara memosisikannya. Batasan terdiri dari arah dan batas agar View dapat berada di dalam tata letak.

Batasan yang Anda tambahkan ke atas dan kiri akan memiliki margin. Margin menentukan seberapa jauh jarak View dari tepi penampungnya.

76b7a03f2e03922d.png

  1. Di Attributes di sebelah kanan, cari Constraint Widget di bagian Layout. Gambar persegi yang muncul mewakili tampilan Anda.

b8811ae0b8d7acdf.png

  1. Klik tanda + di bagian atas kotak. Ini untuk batasan antara bagian atas tampilan teks dan tepi atas tata letak batasan.
  2. Kolom berisi angka akan muncul untuk menyetel margin atas. Margin adalah jarak dari TextView ke tepi penampung, yaitu ConstraintLayout. Angka yang muncul akan berbeda mengikuti posisi Anda meletakkan TextView. Saat Anda menyetel margin atas, Android Studio secara otomatis juga menambahkan batasan dari bagian atas tampilan teks ke bagian atas ConstraintLayout.

ec09d6fe6c58407.png

  1. Ubah margin atas menjadi 16.
  1. Lakukan hal yang sama untuk margin kiri.

ea087eb3bdbc771b.png

  1. Atur text untuk mengucapkan selamat ulang tahun kepada teman, misalnya "Happy Birthday, Sam!" lalu tekan tombol Enter.

106f43119170e8a7.png

  1. Perhatikan bahwa tampilan Design akan diperbarui untuk memperlihatkan tampilan terkini aplikasi Anda.

452cf299739cfef7.png

Menambahkan dan memosisikan TextView lain

Kartu ulang tahun Anda memerlukan baris teks kedua di dekat pojok kanan bawah, yang akan Anda tambahkan di langkah ini menggunakan cara yang sama seperti di tugas sebelumnya. Menurut Anda bagaimana margin TextView ini?

  1. Tarik TextView baru dari Pallete dan letakkan di dekat bagian kanan bawah tampilan aplikasi di Layout Editor.

7006f342897bf9d1.png

  1. Tetapkan margin kanan ke 16.
  2. Tetapkan margin bawah ke 16.

26482fb78346f8b.png

  1. Di Attributes, tetapkan atribut text untuk menandatangani kartu, misalnya "From Emma".
  2. Jalankan aplikasi dan Anda akan melihat ucapan selamat ulang tahun di kiri atas dan tanda tangan di kanan bawah.

f547c1b45045984a.png

Selamat! Anda telah menambahkan dan memosisikan beberapa elemen UI di aplikasi.

4. Menambahkan gaya ke teks

Anda telah menambahkan teks ke antarmuka pengguna, tetapi belum terlihat seperti aplikasi final. Dalam tugas ini, Anda akan mempelajari cara mengubah ukuran, warna teks, dan atribut lain yang memengaruhi tampilan TextView. Anda juga dapat bereksperimen dengan berbagai font.

  1. Klik TextView pertama di Component Tree dan cari bagian Common Attributes dari jendela Attributes. Anda mungkin harus men-scroll ke bawah untuk menemukannya.
  2. Perhatikan berbagai atribut termasuk fontFamily, textSize, dan textColor.

26afd9402e32543b.png

  1. Cari textAppearance.
  2. Jika textAppearance tidak diperluas, klik ikon segitiga terbalik.
  3. Di textSize, tetapkan textSize menjadi 36sp.

abfd83a8ec1f44dd.png

  1. Perhatikan perubahan di Layout Editor.

ce3e0956cad6413a.png

  1. Ubah fontFamily menjadi casual.
  2. Coba beberapa font berbeda untuk melihat tampilannya. Tersedia pilihan font yang lebih banyak di bagian bawah daftar, di bawah More Fonts...
  3. Setelah selesai mencoba berbagai font, setel fontFamily menjadi sans-serif-light.
  4. Klik kotak edit atribut textColor dan mulai ketik black. Perhatikan bahwa saat Anda mengetik, Android Studio akan menampilkan daftar warna yang berisi teks yang telah Anda ketik sejauh ini.

88b7985332d38f90.png

  1. Pilih @android:color/black dari daftar warna dan tekan tombol Enter.
  2. Di TextView pada tanda tangan Anda, ubah textSize, textColor, dan fontFamily agar cocok.
  3. Jalankan aplikasi Anda dan lihat hasilnya.

ab46eb841980bc5b.png

Selamat, Anda telah menyelesaikan langkah pertama untuk membuat aplikasi kartu ulang tahun!

5. Solusi

  1. Buka halaman repositori GitHub yang disediakan untuk project.
  2. Pastikan nama cabang cocok dengan nama cabang yang ditentukan dalam codelab. Misalnya, dalam screenshot berikut, nama cabang adalah main (utama).

1e4c0d2c081a8fd2.png

  1. Di halaman GitHub project, klik tombol Code yang akan menampilkan pop-up.

1debcf330fd04c7b.png

  1. Pada pop-up, klik tombol Download ZIP untuk menyimpan project di komputer. Tunggu download selesai.
  2. Temukan file di komputer Anda (mungkin di folder Downloads).
  3. Klik dua kali pada file ZIP untuk mengekstraknya. Tindakan ini akan membuat folder baru yang berisi file project.

Membuka project di Android Studio

  1. Mulai Android Studio.
  2. Di jendela Welcome to Android Studio, klik Open.

d8e9dbdeafe9038a.png

Catatan: Jika Android Studio sudah terbuka, pilih opsi menu File > Open.

8d1fda7396afe8e5.png

  1. Di file browser, buka lokasi folder project yang telah diekstrak (kemungkinan ada di folder Downloads).
  2. Klik dua kali pada folder project tersebut.
  3. Tunggu Android Studio membuka project.
  4. Klik tombol Run 8de56cba7583251f.png untuk membangun aplikasi dan menjalankannya. Pastikan aplikasi dibangun seperti yang diharapkan.

6. Ringkasan

  • Layout Editor membantu Anda membuat UI untuk aplikasi Android.
  • Hampir semua yang Anda lihat di layar aplikasi Anda adalah View.
  • TextView adalah elemen UI untuk menampilkan teks di aplikasi Anda.
  • ConstraintLayout adalah penampung untuk elemen UI lainnya.
  • Views harus dibatasi secara horizontal dan vertikal dalam ConstraintLayout.
  • Salah satu cara untuk memosisikan View adalah menggunakan margin.
  • Margin menunjukkan jarak View dari tepi penampungnya.
  • Anda dapat menetapkan atribut di TextView seperti font, ukuran teks, dan warna.

7. Mempelajari lebih lanjut