Iphone 视图中的圆角

Iphone 视图中的圆角,iphone,objective-c,uiimageview,Iphone,Objective C,Uiimageview,我有以下代码: [avatar.layer setBorderColor:[[UIColor whiteColor] CGColor]]; [avatar.layer setBorderWidth:2.0]; [avatar.layer setShadowOffset:CGSizeMake(-1.0, -1.0)]; [avatar.layer setCornerRadius:8]; 它确实给了我一个环绕UIImage的圆形白色边框,但是在4个角上有额外的提示。。有没有办法把它切断 setMa

我有以下代码:

[avatar.layer setBorderColor:[[UIColor whiteColor] CGColor]];
[avatar.layer setBorderWidth:2.0];
[avatar.layer setShadowOffset:CGSizeMake(-1.0, -1.0)];
[avatar.layer setCornerRadius:8];
它确实给了我一个环绕UIImage的圆形白色边框,但是在4个角上有额外的提示。。有没有办法把它切断


setMasksToBounds可能就是您想要的

[avatar.layer setMasksToBounds:YES];

虽然setMaskToBounds会剪裁视图,但我很确定,阴影也不会显示(因为它也会被剪裁)。因此,您可能需要将剪裁视图放到另一个更大的视图中以启用阴影来解决这个问题。这里面有什么?
-(UIImage *)makeRoundedImage:(UIImage *) image 
                      radius: (float) radius;
{
  CALayer *imageLayer = [CALayer layer];
  imageLayer.frame = CGRectMake(0, 0, image.size.width, image.size.height);
  imageLayer.contents = (id) image.CGImage;

  imageLayer.masksToBounds = YES;
  imageLayer.cornerRadius = radius;

  UIGraphicsBeginImageContext(image.size);
  [imageLayer renderInContext:UIGraphicsGetCurrentContext()];
  UIImage *roundedImage = UIGraphicsGetImageFromCurrentImageContext();
  UIGraphicsEndImageContext();

  return roundedImage;
}