Merhabalar bu yazımda SwiftUI ile birlikte iOS uygulamalarımızda kullandığımız Toggle nesnesini custom olarak tasarımını nasıl değiştirebileceğinizi göstereceğim.
Toggle nesnesi yani UIKit ile kullandığımız UISwitch nesnesini custom tasarım eklemek için ToggleStyle protokolü ile birlikte custom bir class yazacağız ve bunu yaratmış olduğumuz Toggle nesnesindeki .toggleStyle fonksiyonuna parametre olarak göndereceğiz.
Aşağıda yazdığım örneği inceleyebilirsiniz.
struct ContentView: View { @State var toggleOn: Bool = true var body: some View { Toggle(isOn: $toggleOn, label: { Image(systemName: "moon.fill") .font(.system(size: 25)) Text("Night Mode") .font(.system(size: 15)) }) .padding() .toggleStyle(CheckboxStyleToggle()) } }
struct CheckboxStyleToggle: ToggleStyle { func makeBody(configuration: Configuration) -> some View { HStack { configuration.label Spacer() Image(systemName: configuration.isOn ? "checkmark.circle.fill" : "circle") .resizable() .frame(width: 32, height: 32) .foregroundColor(configuration.isOn ? .blue : .gray) .font(.system(size: 20, weight: .bold, design: .default)) .onTapGesture { configuration.isOn.toggle() } } } }
İlk Yorumu Siz Yapın