Tentu, berikut ikhtisar mendetail tentang bagaimana Anda dapat mengubah ukuran Switch SwiftUI di Swift.
SwiftUI adalah kerangka kerja Apple untuk membangun antarmuka pengguna di semua platform Apple dengan kekuatan Swift. Terkadang, pengembang mungkin merasa perlu menyesuaikan ukuran komponen UI tertentu, seperti saklar. Secara default, SwiftUI tidak mengizinkan untuk mengubah ukuran Switch secara langsung, tetapi kita dapat menggunakan beberapa solusi untuk mencapai hal ini.
Mari selami solusi untuk masalah tersebut.
Membuat Sakelar Kustom di SwiftUI
Untuk menyesuaikan ukuran Switch di SwiftUI, salah satu pendekatannya adalah dengan membuat Switch khusus. Ini memungkinkan Anda memiliki kendali penuh atas tampilan dan ukuran Switch.
Berikut ini contoh kode yang membuat saklar khusus:
struct CustomSwitch: View { @Binding var isOn: Bool var body: some View { Button(action: { self.isOn.toggle() }) { Rectangle() .fill(self.isOn ? Color.green : Color.gray) .frame(width: 50, height: 30) .overlay(Circle() .fill(Color.white) .offset(x: self.isOn ? 10 : -10), alignment: self.isOn ? .trailing : .leading) .cornerRadius(15) .animation(.spring()) } } }
Memahami Kode Saklar Kustom
Mari kita uraikan fungsi kode ini:
- Struktur CustomSwitch: Ini mendefinisikan Tampilan SwiftUI khusus kami. Ini memiliki ikatan dengan nilai boolean – status untuk switch.
- Tindakan tombol: Blok kode Swift ini menentukan perilaku saat tombol ditekan. Di sini, cukup aktifkan status “isOn”.
- Empat persegi panjang: Contoh struktur Rectangle SwiftUI, yang mendefinisikan properti bentuk.
- Isi Warna: Warna Rectangle bergantung pada apakah “isOn” benar atau salah.
- Bingkai: Pengubah bingkai di sini menyatakan lebar dan tinggi sakelar khusus.
- Hamparan, melapisi: Pengubah overlay memungkinkan Anda melapisi Tampilan SwiftUI lainnya di atas tampilan yang sudah ada – di sini, Lingkaran putih yang berfungsi sebagai kenop sakelar.
- Mengimbangi: Pengubah offset digunakan di sini untuk menggerakkan Lingkaran bergantung pada apakah “isOn” benar atau salah, memberikan ilusi bahwa tombol sedang beralih.
- Radius sudut: Hal ini berlaku untuk pembulatan pada sudut-sudut Rectangle yang mendasarinya.
- animasi: Pengubah animasi menerapkan animasi pegas() ke seluruh Tombol – jadi saat Anda beralih, animasi tersebut akan beralih dengan lancar.
Wrapping Up
Memiliki kemampuan untuk menyesuaikan ukuran SwiftUI Switch dapat menjadi keuntungan ketika menyesuaikan antarmuka pengguna agar sesuai dengan kebutuhan aplikasi tertentu. Kami telah mempelajari satu pendekatan untuk mencapai hal ini dengan membuat Switch khusus. Selamat membuat kode!
Ingat: SwiftUI cukup fleksibel dan dapat disesuaikan. Jangan ragu untuk menyesuaikan nilai dan properti pada kode di atas agar lebih sesuai dengan kebutuhan proyek dan desain Anda. Jika Anda perlu mengubah ukuran komponen UI lainnya, pendekatan pembuatan kustom dapat diterapkan dengan cara yang hampir sama.