iOS-设置圆角及指定位置圆角
2022-07-12 本文已影响0人
zwing
1.使用view.layer.cornerRadius实现
view.layer.cornerRadius = 4.0;
view.layer.masksToBounds = YES; // 某些情况(此处不做赘述)此句代码可省略
将view.layer.masksToBounds,设置为NO,可以避免触发离屏渲染。
2.避免离屏渲染或者指定位置设置圆角可以使用UIBezierPath和CAShapeLayer实现
UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:view.bounds byRoundingCorners:UIRectCornerTopLeft | UIRectCornerTopRight cornerRadii:CGSizeMake(12.0, 12.0)];
CAShapeLayer *maskLayer = [[CAShapeLayer alloc] init];
maskLayer.frame = view.bounds;
maskLayer.path = maskPath.CGPath;
view.layer.mask = maskLayer;
3. iOS 11.0可以使用view.layer.maskedCorners设置指定位置圆角
view.layer.cornerRadius = 4.0;
view.layer.maskedCorners = kCALayerMinXMinYCorner | kCALayerMinXMaxYCorner;