iphone - pantalla - UIView con esquina redonda y borde blanco
mi iphone cambio de color la pantalla (6)
Debido a UIProgressHUD
necesito acceder a una API privada, así que espero construir una UIView
con esquina redonda y borde blanco. Sé que hacer la ronda de la esquina es:
view.layer.cornerRadius = 5;
¿Pero cómo hacer que la uiview tenga una esquina redonda y un borde blanco al mismo tiempo?
Bienvenido cualquier comentario
Gracias interdev
También hay propiedades de borde en la capa de la vista: por ejemplo:
view.layer.borderWidth = 1;
view.layer.borderColor = [UIColor redColor].CGColor;
Usando el mismo objeto de capa:
view.layer.borderWidth = 1;
view.layer.borderColor = [[UIColor whiteColor] CGColor];
código para obtener esquinas redondeadas y borde
#import <QuartzCore/QuartzCore.h>
view.layer.cornerRadius = 10;
view.layer.borderWidth = 1;
view.layer.borderColor = [[UIColor whiteColor] CGColor];
A veces, el radio de la esquina con el borde blanco no funciona correctamente, así que utilizo UIBezierPath
y CAShapeLayer
.
Para hacer el radio de la esquina
UIBezierPath *maskPath;
maskPath = [UIBezierPath bezierPathWithRoundedRect:self.imageView.bounds byRoundingCorners:(UIRectCornerTopLeft | UIRectCornerTopRight | UIRectCornerBottomLeft | UIRectCornerBottomRight) cornerRadii:CGSizeMake(10.0, 10.0)];
CAShapeLayer *maskLayer = [[CAShapeLayer alloc] init];
maskLayer.frame = self.view.bounds;
maskLayer.path = maskPath.CGPath;
self.imageView.layer.mask = maskLayer;
Para hacer el borde blanco
CAShapeLayer* borderShape = [CAShapeLayer layer];
borderShape.frame = self.imageView.bounds;
borderShape.path = maskPath.CGPath;
borderShape.strokeColor = [UIColor whiteColor].CGColor;
borderShape.fillColor = nil;
borderShape.lineWidth = 3;
[self.imageView.layer addSublayer:borderShape];
Funcionará. Espero que esto ayude
[view.layer setBorderWidth:2];
[view.layer setBorderColor:[[UIColor whiteColor]CGColor]];
view.layer.cornerRadius = 5;
view.clipsToBounds = YES;
view.layer.borderWidth = 1;
view.layer.borderColor = [UIColor whiteColor].CGColor;