CALayer 新建

- (void)viewDidLoad

{

[super viewDidLoad];

// 如果一个控制是另外一个控件的子控件, 那么这个控件中的layer也是另外一个控件的子layer

//     NSLog(@"star - %@", self.view.layer.sublayers);

CALayer *layer = [CALayer layer];

layer.backgroundColor = [UIColor redColor].CGColor;

layer.bounds = CGRectMake(0, 0, 100, 100);

//    layer.position = CGPointMake(200, 200);

//    layer.contents = (id)[UIImage imageNamed:@"me"].CGImage;

[self.view.layer addSublayer:layer];

}

- (void)test

{

NSLog(@"star - %@", self.view.layer.sublayers);

// 1.创建layer

// CALayer *layer = [[CALayer alloc] init];

CALayer *layer = [CALayer layer];

layer.backgroundColor = [UIColor redColor].CGColor;

layer.bounds = CGRectMake(0, 0, 100, 100);

layer.position = CGPointMake(200, 200);

layer.borderWidth = 10;

layer.cornerRadius = 10;

// 将layer添加在界面上

[self.view.layer addSublayer:layer];

//    NSLog(@"%@", layer.superlayer); // 获取layer的父视图

NSLog(@"end - %@", self.view.layer.sublayers);

//

//    UIView *view = [[UIView alloc] init];

//    view.superview;

//    view.subviews;

//    [self.view addSubview:view];

}

- (void)viewDidLoad {

[super viewDidLoad];

//    设置layer边框

self.imageView.layer.borderWidth = 10;

//    设置边框的颜色

self.imageView.layer.borderColor = [UIColor redColor].CGColor;//注意borderColor的类型

//    设置layer的圆角(设置主图层的圆角)

self.imageView.layer.cornerRadius = 10;

//    设置超出主图层的部分进行剪切操作

//    self.imageView.layer.masksToBounds = YES;

//    self.imageView.clipsToBounds = YES;

//    设置的image不是展示在主图层上的,是展示在子图层上的

self.imageView.layer.contents = (id)[UIImage imageNamed:@"LoginScreen"].CGImage;

//    设置阴影的颜色

self.imageView.layer.shadowColor  = [UIColor blackColor].CGColor;

//    设置阴影的偏移位

//    如果是正数,代表向右移动

//    上

self.imageView.layer.shadowOffset =  CGSizeMake(10, 10);

//    设置阴影的透明度0~1 1 完全不透明 0 完全透明

self.imageView.layer.shadowOpacity =1;

}

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event

{

//    self.imageView.transform = CGAffineTransformMakeTranslation(0, 100);

//    self.imageView.layer.transform = CATransform3DMakeTranslation(0, 100, 0);

//    NSValue *v = [NSValue valueWithCATransform3D:CATransform3DMakeTranslation(0, -200, 0)];

//    [self.imageView.layer setValue:v forKey:@"transform"];

//    [self.imageView.layer setValue:@(100) forKey:@"transform.translation.x"];

//    self.imageView.transform = CGAffineTransformMakeRotationxx(M_PI_4);

//    self.imageView.layer.transform = CATransform3DMakeRotation(M_PI_4, 0, 0, 1);

[self.imageView.layer setValue:@"100" forKey:@"transform.translation.x"];

}

时间: 2024-11-14 12:43:43

CALayer 新建的相关文章

ios新建CALayer

1 // 如果一个控制是另外一个控件的子控件, 那么这个控件中的layer也是另外一个控件的子layer 2 NSLog(@"star - %@", self.view.layer.sublayers); 3 CALayer *layer = [CALayer layer]; 4 layer.backgroundColor = [UIColor redColor].CGColor; 5 layer.bounds = CGRectMake(0, 0, 100, 100); 6 layer

iOS开发——图形编程OC篇&(一)CALayer介绍与基本使用

CALayer介绍与基本使用 一.简单介绍 在iOS中,你能看得见摸得着的东西基本上都是UIView,比如一个按钮.一个文本标签.一个文本输入框.一个图标等等,这些都是UIView. 其实UIView之所以能显示在屏幕上,完全是因为它内部的一个图层,在创建UIView对象时,UIView内部会自动创建一个图层(即CALayer对象),通过UIView的layer属性可以访问这个层 @property(nonatomic,readonly,retain) CALayer *layer; 当UIVi

iOS开发——图形编程OC篇&(二)CALayer自定义图层

一.第一种方式 1.简单说明 以前想要在view中画东西,需要自定义view,创建一个类与之关联,让这个类继承自UIView,然后重写它的DrawRect:方法,然后在该方法中画图. 绘制图形的步骤: (1)获取上下文 (2)绘制图形 (3)渲染图形 如果在layer上画东西,与上面的过程类似. 代码示例: 新建一个类,让该类继承自CALayer YYMylayer.m文件 1 // 2 // YYMylayer.m 3 // 05-自定义layer(1) 4 // 5 // Created b

iOS开发UI篇—CAlayer简介

iOS开发UI篇—CALayer简介 一.简单介绍 在iOS中,你能看得见摸得着的东西基本上都是UIView,比如一个按钮.一个文本标签.一个文本输入框.一个图标等等,这些都是UIView. 其实UIView之所以能显示在屏幕上,完全是因为它内部的一个图层,在创建UIView对象时,UIView内部会自动创建一个图层(即CALayer对象),通过UIView的layer属性可以访问这个层 @property(nonatomic,readonly,retain) CALayer *layer; 当

iOS开发UI篇—CAlayer(自定义layer)

iOS开发UI篇—CAlayer(自定义layer) 一.第一种方式 1.简单说明 以前想要在view中画东西,需要自定义view,创建一个类与之关联,让这个类继承自UIView,然后重写它的DrawRect:方法,然后在该方法中画图. 绘制图形的步骤: (1)获取上下文 (2)绘制图形 (3)渲染图形 如果在layer上画东西,与上面的过程类似. 代码示例: 新建一个类,让该类继承自CALayer YYMylayer.m文件 1 // 2 // YYMylayer.m 3 // 05-自定义l

iOS -- CALayer之简单的使用

一.简单介绍 在iOS中,你能看得见摸得着的东西基本上都是UIView,比如一个按钮.一个文本标签.一个图标等等,这些都是UIView. 其实UIView之所以能够显示在屏幕上,完全是因为它内部的一个图层,在创建UIView对象时,UIView内部会自动创建一个图层(即CALayer对象),通过UIView的layer属性可以访问这个层. 当UIView需要显示到屏幕时,会调用drawRect:方法进行绘图,并且会将所有内容绘制在自己的图层上,绘图完毕后,系统会将图层拷贝到屏幕上,于是就完成了U

CALayer简介

iOS开发UI篇—CALayer简介 一.简单介绍 在iOS中,你能看得见摸得着的东西基本上都是UIView,比如一个按钮.一个文本标签.一个文本输入框.一个图标等等,这些都是UIView. 其实UIView之所以能显示在屏幕上,完全是因为它内部的一个图层,在创建UIView对象时,UIView内部会自动创建一个图层(即CALayer对象),通过UIView的layer属性可以访问这个层 @property(nonatomic,readonly,retain) CALayer *layer; 当

ios新建图层

////  MJViewController.m//  02-CALayer02-新建图层////  Created by apple on 14-4-21.//  Copyright (c) 2014年 itcast. All rights reserved.// #import "MJViewController.h" @interface MJViewController () @end @implementation MJViewController - (void)viewD

IOS 自定义CALayer层

新建一个类继承CALayer,重写drawInContext:方法. 导入新建类的.h文件