Aplicação de cantos arredondados a uma vista em Objective-C

Em alguns casos, pode ser necessário aplicar alguns cantos arredondados adoráveis ​​a uma UIViewou uma de suas subclasses ao construir um aplicativo iOS. Em alguns casos, não há problema em acessar a layerpropriedade da visualização e da chamada setCornerRadius.

Se o desempenho for prejudicado, o uso de bezierPaths e máscaras pode ser a solução.

-(void) setCornerRadius
{

// Create a bezier path with the required corners rounded

UIBezierPath *cornersPath = [UIBezierPath bezierPathWithRoundedRect:view.bounds byRoundingCorners:(UIRectCornerBottomLeft|UIRectCornerBottomRight) cornerRadii:CGSizeMake(5, 5)];

//Create a new layer to use as a mask

CAShapeLayer *maskLayer = [CAShapeLayer layer];

// Set the path of the layer

maskLayer
.path = cornersPath.CGPath;
self.view.layer.mask = maskLayer;

}