关闭

苹果开发 笔记(46)圆角

539人阅读 评论(0) 收藏 举报
分类:

IOS 提供一个便利的方法呈现圆角的效果,代码量非常少,只要设置layer的cornerRadius 属性 即可。

 #import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];

    self.view.backgroundColor = [UIColor grayColor];

    UIImageView *imageView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"head.jpg"]];
    imageView.center = self.view.center;
    imageView.clipsToBounds = YES;
    imageView.layer.cornerRadius = 5;
    imageView.layer.borderWidth = 3;
    imageView.layer.borderColor  = [UIColor whiteColor].CGColor;
    [self.view addSubview:imageView];

}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end

就能呈现出良好,因为加了borderWidth 和 borderColor 看起来 有框的效果出现。
这里写图片描述

稍微修改一下代码,就能呈现出圆形的效果。

  imageView.layer.cornerRadius = imageView.frame.size.width/2;

但是你有没有发现这个圆形并不是真正圆形,因为本身的图片尺寸并不是正方形。所以设置宽的一半值刚好呈现是圆形。这样子就可以解决到相应的问题。

这里写图片描述

如果需要对图片设置阴影的话,则需要修改几行代码即可


    UIImageView *imageView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"head.jpg"]];
    imageView.center = self.view.center;
     //imageView.clipsToBounds = YES;
    imageView.layer.cornerRadius = 6;//imageView.frame.size.width/2;
    imageView.layer.borderWidth = 20;
    imageView.layer.shadowOffset = CGSizeMake(4, 5);
    imageView.layer.shadowOpacity = 0.8;
    imageView.layer.shadowRadius = 4;
    imageView.layer.shadowColor=[UIColor blackColor].CGColor;
    imageView.layer.borderColor  = [UIColor orangeColor].CGColor;
    [self.view addSubview:imageView];

注意到 要注释了 imageView.clipsToBounds = YES;
否则真的看不见阴影了。但是有时候却想阴影,又想要圆角?至于怎样写?还没了解清楚。
这里写图片描述

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1877761次
    • 积分:36728
    • 等级:
    • 排名:第129名
    • 原创:1333篇
    • 转载:22篇
    • 译文:0篇
    • 评论:2139条
    公告栏
    是夏天带来了热情,
    还是热情与夏天恋爱了?
    我倾夏天的脚步,
    感受清风的凉意,
    在行云流水之中,
    追求一种人生哲学.
    QQ :877690056

    赞赏在下

    Flag Counter
    文章存档