IOS_View或者使用CAShapeLayer将视图变圆

本文来自【小编我】

找到两个使得View变圆的方法,当然还有很多,希望可以补充。直接群里说,我会补充进来。


第一种方法:

直接传入视图和直径即可

-(void)setRoundedView:(UIImageView *)roundedView toDiameter:(float)newSize 
{   
 CGPoint saveCenter = roundedView.center;   
 CGRect newFrame =CGRectMake(roundedView.frame.origin.x, roundedView.frame.origin.y, newSize, newSize);  
 roundedView.frame = newFrame;  
 roundedView.layer.cornerRadius = newSize / 2.0;  
 roundedView.center = saveCenter;
}


第二种方法:

CAShapeLayer把图片做成圆形效果

    利用CAShapeLayer可以制作出任意的几何图形,把它作为UIImageView的遮罩,达到把图片做成圆形效果。
        //创建个人主页头部的用户头像
        self.userHead = [[UIImageView alloc]initWithFrame:CGRectMake(10, 35, 80, 80)];
        self.userHead.image = [UIImage imageNamed:@"start.jpg"];
       
        //创建圆形遮罩,把用户头像变成圆形
        UIBezierPath* path = [UIBezierPath bezierPathWithArcCenter:CGPointMake(40, 40) radius:40 startAngle:0 endAngle:2*M_PI clockwise:YES];
        CAShapeLayer* shape = [CAShapeLayer layer];
        shape.path = path.CGPath;
        self.userHead.layer.mask = shape;
        [self addSubview:self.userHead];


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值