iOS UIView设置圆角

UIView设置圆角

1、比较简单的情况,UIView四个角都是圆角:

    UIView *aView = [[UIView alloc] init];

    aView.frame = CGRectMake(0, 0, 300, 200);
    aView.backgroundColor = [UIColor redColor];

    //设置圆角边框

    aView.layer.cornerRadius = 8;

    aView.layer.masksToBounds = YES;

    //设置边框及边框颜色

    aView.layer.borderWidth = 8;

    aView.layer.borderColor =[ [UIColor grayColor] CGColor];

    [self.view addSubview:aView];

2、设置四个角中的某个或者某几个为圆角

    UIView *aView = [[UIView alloc] init];

    aView.frame = CGRectMake(0, 0, 300, 200);
    aView.backgroundColor = [UIColor redColor];

    [self.view addSubview:aView];

    //设置所需的圆角位置以及大小
    UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:aView.bounds byRoundingCorners:UIRectCornerBottomLeft | UIRectCornerBottomRight cornerRadii:CGSizeMake(10, 10)];
    CAShapeLayer *maskLayer = [[CAShapeLayer alloc] init];
    maskLayer.frame = aView.bounds;
    maskLayer.path = maskPath.CGPath;
    aView.layer.mask = maskLayer;

其中,UIRectCornerBottomLeft,UIRectCornerBottomRight是可以选择的角。

typedef NS_OPTIONS(NSUInteger, UIRectCorner) {
    UIRectCornerTopLeft     = 1 << 0,
    UIRectCornerTopRight    = 1 << 1,
    UIRectCornerBottomLeft  = 1 << 2,
    UIRectCornerBottomRight = 1 << 3,
    UIRectCornerAllCorners  = ~0UL
};

上面的枚举是可以供选择的角,分别是:“左上角”、“右上角”、“左下角”、“右下角”。

时间: 2024-12-26 09:53:43

iOS UIView设置圆角的相关文章

iOS图片设置圆角

一般我们在iOS开发的过程中设置圆角都是如下这样设置的. imageView.clipsToBounds = YES; [imageView.layer setCornerRadius:50]; 这样设置会触发离屏渲染,比较消耗性能.比如当一个页面上有十几头像这样设置了圆角 会明显感觉到卡顿. 这种就是最常用的,也是最耗性能的. 注意:ios9.0之后对UIImageView的圆角设置做了优化,UIImageView这样设置圆角 不会触发离屏渲染,ios9.0之前还是会触发离屏渲染.而UIBut

UIView设置圆角

1.比较简单的情况,UIView四个角都是圆角: UIView *aView = [[UIView alloc] init]; aView.frame = CGRectMake(0, 0, 300, 200); aView.backgroundColor = [UIColor redColor]; //设置圆角边框 aView.layer.cornerRadius = 8; aView.layer.masksToBounds = YES; //设置边框及边框颜色 aView.layer.bord

iOS图片设置圆角性能优化

问题 圆角虽好,但如果使用不当,它就是你的帧数杀手,特别当它出现在滚动列表的时候.下面来看圆角如何毁掉你的流畅度的. 实测 layer.cornerRadius 我创建了一个简单地UITableView视图,为每个cell添加了2个UIImageView实例,且为UIImageView实例进行如下设置 aImageView.layer.cornerRadius = aImageView.frame.size.width/2.0; aImageView.layer.masksToBounds = 

iOS 高效添加圆角效果实战讲解

圆角(RounderCorner)是一种很常见的视图效果,相比于直角,它更加柔和优美,易于接受.但很多人并不清楚如何设置圆角的正确方式和原理.设置圆角会带来一定的性能损耗,如何提高性能是另一个需要重点讨论的话题.我查阅了一些现有的资料,收获良多的同时也发现了一些误导人错误.本文总结整理了一些知识点,概括如下: 设置圆角的正确姿势及其原理 设置圆角的性能损耗 其他设置圆角的方法,以及最优选择 我为本文制作了一个 demo,读者可以在我的 github 上 clone 下来:CornerRadius

iOS之设置用户头像的圆角

1. 显示用户头像用UIImageView实现,添加默认图片后效果如下图所示,头像显示为矩形图片. 代码实现: // ViewController.m // SetUserImage // // Created by jerei on 15-4-26. // Copyright (c) 2015年 jerei. All rights reserved. // #import "ViewController.h" #define kWidth self.view.bounds.size.

IOS UIView圆角,阴影,边框,渐增光泽

圆角 sampleView.layer.cornerRadius = 2.5; // 圓角的弧度sampleView.layer.masksToBounds = YES; 阴影 sampleView.layer.shadowColor = [[UIColor blackColor] CGColor];sampleView.layer.shadowOffset = CGSizeMake(3.0f, 3.0f); // [水平偏移, 垂直偏移]sampleView.layer.shadowOpaci

iOS设置圆角的四种方法

一.设置CALayer的cornerRadius cornerRadius属性影响layer显示的background颜色和前景框border,对layer的contents不起作用.故一个imgView(类型为UIImageView)的image不为空,设置imgView.layer的cornerRadius,是看不出显示圆角效果的,因为image是imgView.layer的contents部分. 这种情况下将layer的masksToBounds属性设置为YES,可以正确的绘制出圆角效果.

iOS之用xib给控件设置圆角、边框效果

xib中为各种控件设置圆角 通过代码的方式设置 @interface ViewController () @property (weak, nonatomic) IBOutlet UIView *myView; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.myView.layer.masksToBounds = YES; self.myView.layer.cornerRa

IOS 设置圆角用户头像

在App中有一个常见的功能,从系统相册或者打开照相机得到一张图片,然后作为用户的头像.从相册中选取的图片明明都是矩形的图片,但是展示到界面上却变成圆形图片,这个神奇的效果是如何实现的呢? 请大家跟着下面的步骤,去实现选取并展示圆角头像的功能吧! 一.设置显示头像的圆角图片 1. 显示用户头像用UIImageView实现,添加默认图片后效果如下图所示,头像显示为矩形图片. 代码实现: // ViewController.m // SetUserImage // // Created by jere