Sobes.tech
Junior — Middle

Milyen módszereket és megközelítéseket ismersz az interfészen megjelenő elem alakjának kerekítésére vagy módosítására?

sobes.tech MI

Válasz az MI-től

Az iOS-ban megjelenő elem alakjának módosításához több megközelítés is létezik:

  • layer.cornerRadius tulajdonság — beállítja a UIView sarkainak lekerekítési sugarát.
  • Maszkok UIBezierPath és CAShapeLayer segítségével — lehetővé teszik összetettebb formák és kivágások létrehozását.
  • clipsToBounds = true használata — hogy a tartalom ne lépje túl a lekerekített határokat.
  • Automatikus maszkok az Interface Builder-ben — a lekerekítés és árnyékok beállítása.

Példa a UIView sarkainak lekerekítésére:

myView.layer.cornerRadius = 10
myView.clipsToBounds = true

Komplexebb formákhoz maszkot lehet létrehozni:

let path = UIBezierPath(roundedRect: myView.bounds, byRoundingCorners: [.topLeft, .topRight], cornerRadii: CGSize(width: 10, height: 10))
let mask = CAShapeLayer()
mask.path = path.cgPath
myView.layer.mask = mask