Membuat Tampilan Sederhana dengan SwiftUI

Mendesain halaman detail hotel menggunakan SwiftUI

Ricky Austin
Dipantry
3 min readOct 8, 2020

--

Photo by Dmitry Chernyshov on Unsplash

SwiftUI adalah framework yang diperkenalkan Apple dalam acara WWDC tahun 2018 silam. Framework ini dibuat dengan tujuan mempermudah pekerjaan para User Interface (UI) Developer. Bagi yang pertama kali mencoba mungkin akan merasa aneh dan membingungkan, namun jika sudah terbiasa pasti akan terasa jauh lebih mudah daripada mendesain dengan Storyboard.

Kali ini, kita akan belajar bagaimana membuat tampilan halaman detail mengenai salah satu hotel. Tanpa banyak basa-basi, kita langsung mulai ya!

Tampilan Halaman

Berikut adalah tampilan yang ingin kita buat :

Main Interface

Di atas adalah contoh tampilan halaman informasi. Di halaman tersebut mencakup Image, Button, dan TextView. Masing -masing akan kita bedah satu persatu. Pertama, pastikan kalian memilih SwiftUI sebagai pilihan interface-nya. Selanjutnya buka file ContentView.swift, lalu isi kode berikut sebagai awalan.

Karena gambar yang digunakan sebagai cover akan melewati batas Safe Area maka kita gunakan .edgeIgnoringSafeArea(.top)

Image Header

Selanjutnya masuk ke bagian pertama. Berikut adalah tampilan pertama yang ingin kita buat :

Cover Header

Pertama-tama kita letakkan gambar yang diinginkan dalam folder Assets.xcassets. Lalu, tambahkan kode berikut diantara ContentView : View dan var body : some View :

Kode diatas adalah sebagai penentu apakah status tombol ‘hati’ sedang dipilih atau tidak.

Sekarang, kita mulai membuat tampilan atas dengan meletakkan kode berikut , tepat di dalam VStack:

Disini pasti ditemui error di bagian yang bertuliskan .buttonStyle(MyButtonStyle) . Tapi tenang saja, kita akan bahas itu nanti :-). Sementara ini aku akan jelaskan kode di atas dulu.

Disini kita menggunakan UIScreen.main.bounds untuk mengambil lebar dan tinggi layar device kita, lalu kita pergunakan untuk ukuran gambarnya.

Selanjutnya di bawah Image() terdapat HStack untuk memposisikan Judul dan tombolnya, untuk memberikan jarak antara keduanya kita cukup gunakan Spacer().

Kode di bawah digunakan untuk ikon tombol ‘hati’ :

Kode tersebut menggunakan 2 String di dalamnya, cara itu disebut dengan Conditional Modifier, dimana gambar tombol akan berubah berdasarkan kondisi true dan false. Sedangkan untuk tombol kedua, kita gunakan atribut yang sama dengan yang pertama hanya saja tanpa Conditional Modifier.

Sekarang kita akan kembali membahas error yang terjadi di awal. Jadi buttonStyle() itu memanggil sebuah struct yang bernama MyButtonStyle() dan akan menjadi sebuah View Modifier. Untuk itu, letakkan kode berikut di bawah struct ContentView :

Bottom Content

Error sudah teratasi, harusnya kita sudah memiliki tampilan yang sama seperti contoh. Selanjutnya kita mulai masuk ke bagian konten :

Bagian ini jelas jauh lebih mudah karena hanya berupa teks saja. Akan tetapi jika ingin kodenya, ini dia :

Selesai!! harusnya kita sudah berhasil membuat halaman detail hotel. Mungkin ini agak rumit bagi yang tidak terbiasa mendesain interface dengan kode. Namun sisi baiknya, kita bahkan tidak perlu mengatur constraint dari setiap tampilan, bahkan membuat custom button terasa lebih praktis dengan SwiftUI.

Penutup

Lagipula, terima kasih telah membaca artikel ini, semoga bermanfaat. Jangan lupa untuk terus belajar :-).

Berikut juga link untuk kode selengkapnya.

--

--

Ricky Austin
Dipantry

Currently undergraduate Informatics student. I have interest in Mobile Development while enjoying talking about future things