Добавить объявление

Swift: masksToBounds VS clipsToBounds в UIKit

Если кратко: clipsToBounds - используется для вью, masksToBounds - для слоя.

clipsToBounds:


  • Используется для UIView.

  • Контролирует обрезку дочерних вью (subviews).

  • Если значении true - всё, что выходит за границы родителя, будет скрыто.

Пример использования clipsToBounds:


let myView = UIView()
myView.clipsToBounds = true // обрезаем subviews

masksToBounds:


  • Используется для CALayer.

  • Контролирует обрезку контента слоя (изображения, тени, закруглении).

  • При значении true - обрезает всё, включая тени и выходящие за границы части изображения.

Пример использования masksToBounds:


let myLayer = CALayer()
myLayer.masksToBounds = true // обрезаем изображение/тень
myLayer.cornerRadius = 10 // закругляем углы, будет работать если masksToBounds является true
16.06.2025 10 377