Как получить текстовое поле с закругленными углами?
Я использую следующий код:
- (void)setMaskByRoundingCorners:(UIRectCorner)corners withCornerRadius:(float)radius
{
UIBezierPath* rounded = [UIBezierPath bezierPathWithRoundedRect:self.bounds byRoundingCorners:corners cornerRadii:CGSizeMake(radius, radius)];
CAShapeLayer* shape = [[CAShapeLayer alloc] init];
[shape setPath:rounded.CGPath];
shape.frame = self.bounds;
self.layer.mask = shape;
}
Но теперь я вижу, этот странный эффект.
Я называю это из viewcontroller, после didlayoutsubviews. Я делаю это для обновления основного потока.
- (void)viewDidLayoutSubviews
{
[self initUIfeatures];
}
- (void)initUIfeatures
{
[authTextField setMaskByRoundingCorners:(UIRectCornerTopLeft|UIRectCornerTopRight|UIRectCornerBottomLeft) withCornerRadius:8.0f];
}
Вопрос - закругленные углы, обрезанные.
почему бы вам не использовать layer.corner.raius для сделай это? – SeanChense
Откуда вы вызываете этот метод? – alexburtnik
@alexburtnik - (void) viewDidLayoutSubviews { [self initUIfeatures]; } - (пустоты) initUIfeatures { [authTextField setMaskByRoundingCorners: (UIRectCornerTopLeft | UIRectCornerTopRight | UIRectCornerBottomLeft) withCornerRadius: 8.0f]; } – Viktorianec