Логическое значение, определяющее, ограничены ли подпредставления границами представления. — Документы Apple

Установка этого значения на true приводит к тому, что подпредставления обрезаются до границ представления. Если установлено значение false, подвиды, кадры которых выходят за видимые границы вида, не обрезаются. Значение по умолчанию — false. Некоторые подклассы UIView, такие как UIScrollView, переопределяют значение по умолчанию на true.

Давайте разберемся в этом с помощью примера. Создайте новый проект Xcode. Поместите UIView в центр экрана. Задайте для него некоторые ограничения и цвет (в данном случае коричневый), чтобы он выглядел отчетливо.

Создайте IBOutlet коричневого цвета и назовите его brownView. Теперь добавьте следующий код в метод viewDidLoad и запустите приложение.

brownView.layer.cornerRadius = 40

Мы получаем следующий вывод

Теперь добавьте новый UIView внутрь brownView и задайте для него ограничения (0,0,0,0) с помощью brownView, как показано здесь.

Теперь снова запустите приложение.

Мы замечаем, что redView не имеет углового радиуса. Но почему? Он находится внутри brownView, и мы передали cornerRadius brownView, и, следовательно, он должен иметь cornerRadius.

Когда мы задаем закругленные углы представления в приложении для iOS, мы можем заметить, что представление выглядит закругленным, но любой контент внутри него (например, изображения или текст) выходит за края закругленных углов. Установка clipsToBounds на true в представлении гарантирует, что содержимое внутри представления также обрезается по закругленным углам, благодаря чему все выглядит аккуратно и аккуратно. Это похоже на вырезание фотографии, чтобы она поместилась в рамку: если фотография слишком большая, мы обрезаем края, чтобы она хорошо помещалась.

Теперь добавьте эту строку в viewDidLoad и перезапустите приложение.

brownView.clipsToBounds = true

Если вы нашли эту статью полезной, пожалуйста, поделитесь этой историей, подпишитесь на меня в среде и поаплодируйте 👏. Спасибо!