CALayers _图层设置

//CAlayer 图层对象,每一个视图都有一个calayer对象,改变图层就能改变视图在界面上的显示。:


UIImageView *iv=[[UIImageView alloc]initWithFrame:CGRectMake(60, 50, SCREEN_W-120, SCREEN_H-200)];

iv.image=[UIImage imageNamed:@"4.jpg"];

CALayer *lay=iv.layer;

lay.cornerRadius=20.0f;

lay.borderWidth=10.0f;

lay.borderColor=[UIColor cyanColor].CGColor;

lay.shadowOffset=CGSizeMake(20, 20);

lay.shadowOpacity=2.0f;

_lay=lay;

[self creatBtn];

[self.view addSubview:iv];


CALayer的可以影响其外观的特性有:

  • 层的大小尺寸
  • 背景色
  • 内容
  • 是否使用圆角
  • 是否使用阴影
  • 等等

需要说明的是CALayer的大部分属性都可以用来实现动画效果。

当然可以直接使用CALayer,也可以使用其子类,如CAGradientLayerCATextLayerCAShapeLayer等等。


如果想在圆角的同时加上阴影,可以通过创建一个子图层来实现:

然后添加一个带阴影效果的子层,加入下列代码:

    CALayer *sublayer=[CALayer layer]; //初始化层

    sublayer.frame=CGRectMake(4020240360);//设定层的大小

    sublayer.backgroundColor=[UIColor blueColor].CGColor;//设定层的背景色

    sublayer.cornerRadius=10.0;//设定层的圆角效果

    sublayer.borderWidth=2.0;   //给层设置边框

    sublayer.shadowColor=[UIColor blackColor].CGColor; //设定边框的颜色

    //设置层的阴影效果----

    sublayer.shadowOffset=CGSizeMake(03); //阴影的位置

    sublayer.shadowRadius=5.0;//阴影的圆角

    sublayer.shadowColor=[UIColor blackColor].CGColor; //阴影的颜色

    sublayer.shadowOpacity=0.8;//阴影的透明度

    [self.view.layer addSublayer:sublayer];



            



你可能感兴趣的:(layer)