使用CALYER的圆角UIView-只有一些角-如何使用?

使用CALYER的圆角UIView-只有一些角-如何使用?

在我的应用程序中,有四个按钮命名如下:

  • 左上角
  • 左下角
  • 右上角
  • 右下角

按钮上方有一个图像视图(或UIView)。

现在,假设一个用户点击左上角的按钮.上面的图像/视图应该在那个特定的角落圆角。

我有一些困难,在应用圆角的UIView。

现在,我正在使用以下代码将圆角应用于每个视图:

    // imgVUserImg is a image view on IB.
    imgVUserImg.image=[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"any Url Here"];
    CALayer *l = [imgVUserImg layer];
    [l setMasksToBounds:YES];
    [l setCornerRadius:5.0];  
    [l setBorderWidth:2.0];
    [l setBorderColor:[[UIColor darkGrayColor] CGColor]];

以上代码将圆度应用于提供的视图的每个角落。相反,我只是想把圆度应用到选定的角,如-顶/顶+左/底+右等。

有可能吗?多么,怎样?


富国沪深
浏览 633回答 3
3回答

梦里花落0921

我已经在我的代码中的许多地方使用了这个代码,它100%正确工作。您可以通过更改一个属性“by RoundingCorners:UIRectCornerBottomLeft”来更改任何Corder。UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:view.bounds byRoundingCorners:UIRectCornerBottomLeft cornerRadii: CGSizeMake(10.0, 10.0)];                 CAShapeLayer *maskLayer = [[CAShapeLayer alloc] init];                 maskLayer.frame = view.bounds;                 maskLayer.path = maskPath.CGPath;                 view.layer.mask = maskLayer;                 [maskLayer release];
打开App,查看更多内容
随时随地看视频慕课网APP