Sigurisht, këtu është një përmbledhje e detajuar se si mund të ndryshoni madhësinë e një Switch SwiftUI në Swift.
SwiftUI është korniza e Apple për të ndërtuar ndërfaqe përdoruesi në të gjitha platformat e Apple me fuqinë e Swift. Ndonjëherë, zhvilluesit mund të hasin nevojën për të rregulluar madhësinë e komponentëve të veçantë të UI, si një ndërprerës. Si parazgjedhje, SwiftUI nuk lejon ndryshimin e drejtpërdrejtë të madhësisë së një Switch, por ne mund të përdorim disa zgjidhje për ta arritur këtë.
Le të zhytemi në zgjidhjen e problemit.
Krijimi i një ndërprerës të personalizuar në SwiftUI
Për të rregulluar madhësinë e një Switch në SwiftUI, një qasje është krijimi i një ndërprerës të personalizuar. Kjo ju lejon të keni kontroll të plotë mbi pamjen dhe madhësinë e ndërprerësit.
Këtu është një shembull i kodit që krijon një ndërprerës të personalizuar:
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()) } } }
Kuptimi i kodit të ndërrimit me porosi
Le të zbërthejmë se çfarë bën ky kod:
- Struktura CustomSwitch: Kjo përcakton pamjen tonë të personalizuar SwiftUI. Ai ka një lidhje me një vlerë boolean - gjendjen për ndërprerësin.
- Veprimi i butonit: Ky bllok kodi Swift specifikon sjelljen kur shtypet butoni. Këtu, thjesht ndryshoni gjendjen "isOn".
- Drejtkëndësh: Një shembull i strukturës Rectangle të SwiftUI, që përcakton vetitë e formës.
- Ngjyra e mbushjes: Ngjyra e Drejtkëndëshit varet nëse "isOn" është e vërtetë apo e rreme.
- Frame: Modifikuesi i kornizës këtu po tregon gjerësinë dhe lartësinë e çelësit të personalizuar.
- mbulesë: Modifikuesi i mbivendosjes ju lejon të vendosni një pamje tjetër SwiftUI në krye të asaj ekzistuese - këtu, një Rreth i bardhë që shërben si çelësi i çelësit.
- Kompensimi: Modifikuesi i kompensimit përdoret këtu për të lëvizur Rrethin në varësi të faktit nëse "isOn" është e vërtetë ose e rreme, duke dhënë iluzionin se çelësi po ndërron.
- Rrezja e këndit: Kjo vlen për rrumbullakimin në qoshet e drejtkëndëshit themelor.
- animacion: Modifikuesi i animacionit aplikon një animacion Spring() në të gjithë Butonin – kështu që kur ta ndërroni, ai do të ndërrohet pa probleme.
Duke Up
Të kesh aftësinë për të personalizuar madhësinë e një ndërprerës SwiftUI mund të jetë një avantazh kur përshtatet ndërfaqja e përdoruesit për t'iu përshtatur nevojave specifike të aplikacionit. Ne kemi mësuar një qasje për ta arritur këtë duke krijuar një ndërprerës të personalizuar. Gëzuar kodimin!
Mos harroni: SwiftUI është mjaft fleksibël dhe i personalizueshëm. Mos ngurroni të rregulloni vlerat dhe vetitë në kodin e mësipërm për t'iu përshtatur më mirë nevojave të projektit dhe dizajnit tuaj. Nëse keni nevojë të ndryshoni madhësinë e çdo komponenti tjetër të ndërfaqes së përdoruesit, qasja e krijimit me porosi mund të zbatohet pothuajse në të njëjtën mënyrë.