2010-12-16 3 views

ответ

14

Вы можете сделать это, манипулируя layer вида и его masksToBounds. У меня есть следующий код в UIView категории:

#import <QuartzCore/QuartzCore.h> 
... 
- (void)addRoundedCornersWithRadius:(NSInteger)cornerRadiusInPixels 
{ 
    self.layer.cornerRadius = cornerRadiusInPixels; 
    self.layer.masksToBounds = YES; 
    self.opaque = NO; 
} 

- (void)makeEndsRounded 
{ 
    CGFloat minSide = fmin(self.bounds.size.width, self.bounds.size.height); 
    [self addRoundedCornersWithRadius:minSide/2]; 
} 
+0

Какова цель линии «self.layer.masksToBounds = YES?»? – Jumhyn 2010-12-16 02:21:14

0

Не знаю, о чем я знаю - начиная с UIViews, задаются CGRects, они технически всегда прямоугольные. Если вы хотите закругленный эффект, вам нужно фоновое изображение с закругленными углами.

+0

нормально NVM это другие ответы лучше – prgmast3r 2010-12-16 01:46:22

Смежные вопросы