UIView的layer层的设置

1 篇文章 0 订阅
- (void)viewDidLoad
{
    [
super viewDidLoad];
// Do any additional setup after loading the view.
    
    
//viewlayer层的设置和ImageViewlayer层的设置
    
//注意了:在滚动视图上一般不要设置layer的边框,阴影,因为比较耗费内存
    
//.创建view
    
UIView *view = [[UIView allocinitWithFrame:CGRectMake(20, 20, 100, 100)];
    view.
backgroundColor = [UIColor cyanColor];
    [
self.view addSubview:view];
    

    
//1.UIView上修改layer层的背景颜色(图层与UIView是一样大的)
    view.
layer.backgroundColor = [UIColor yellowColor].CGColor;
    
    
//2.layer层修改透明度:opacity,0.0-1.0;(0.0UIView将看不见)
    view.
layer.opacity = 0.8;
    
    
//3.设置圆角的,设置的值为10.0
    view.
layer.cornerRadius = 20.0;
    
    
//4.设置边框
    view.
layer.borderWidth = 10.0;
    
//5.设置边框颜色
    view.
layer.borderColor = [UIColor purpleColor].CGColor;
    
    
//6.阴影部分的设置 (注意阴影部分的透明度默认为0)
    view.
layer.shadowOpacity = 0.8;
    view.
layer.shadowColor = [UIColor brownColor].CGColor;
    
//阴影部分的偏移量:(若都为正,则往右下偏移)
    view.
layer.shadowOffset CGSizeMake(10, 10);
    
    
//7.anchorPoint锚点:绕着某个点进行旋转(轻易不要动锚点)
    
NSLog(@"frame = %@"NSStringFromCGRect(view.layer.frame)); //得到的结果: frame = {{20, 20}, {100, 100}}
    
NSLog(@"anchorPoint = %@"NSStringFromCGPoint(view.layer.anchorPoint)); //anchorPoint = {0.5, 0.5}
    
//position是某点基于父视图原点的坐标,(相当于viewcenter)
    
NSLog(@"position = %@"NSStringFromCGPoint(view.layer.position)); //position = {70, 70}
    
    
//8.在图层上添加一个子图层
    
//1>先创建一个图层
    
CALayer *subLayer = [CALayer layer];
    
//2>设置它的frame,backgroundColor
    subLayer.
frame CGRectMake(10, 10, 50, 50);
    subLayer.
backgroundColor = [UIColor grayColor].CGColor;
    
//3>viewlayer上加上一个子图层
    [view.
layer addSublayer:subLayer];
    
    
    
//.创建UIImageView
    
UIImage *image = [UIImage imageNamed:@"a1.jpg"];
    
UIImageView *imageView = [[UIImageView allocinitWithFrame:CGRectMake(180, 20, 100, 100)];
    imageView.
image = image;
    [
self.view addSubview:imageView];
    
    
//1>创建imageView图层的阴影部分
    imageView.
layer.shadowRadius = 10.0;
    imageView.
layer.shadowOpacity = 1.0;
    imageView.
layer.shadowOffset =CGSizeMake(10, -10);
    
    
//2>注意imageView:设置圆角时必须设置将masksToBounds打开,但是masksToBounds打开时,不会显示阴影
    
//解决方案一:设置两个layer,一个layer用于控制阴影,一个layer用于圆角
    imageView.
layer.cornerRadius = 20;
    imageView.
layer.masksToBounds YES;

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值