#import "ViewController.h"

@interface ViewController (){
    CALayer *_l1;//定义能够全局使用
    CALayer *_l2;
}

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];

CALayer *l2 = [CALayer layer];
    l2.frame = CGRectMake(50, 50, 100, 100);
    l2.backgroundColor = [UIColor greenColor].CGColor;
//    l2.transform = CATransform3DMakeRotation(M_PI_4, 1, 1, 0);//旋转
    [self.view.layer addSublayer:l2];
    _l2 = l2;
    
    
    CALayer *l1 = [CALayer layer];//创建并初始化
    l1.frame = CGRectMake(50, 50, 100, 100);
    l1.backgroundColor = [UIColor yellowColor].CGColor;//背景颜色
    //    l1.doubleSided = NO;   //是否两面
    //    l1.transform = CATransform3DMakeRotation(M_PI_4, 1, 1, 0);//旋转
    l1.cornerRadius = 30;//当要是一个矩形时 这个为将要在四个角变成圆角  如果有图片则不能直接显示效果
    l1.masksToBounds = NO;//这就是有图片时将会把多出的部分强行剪切,就能显示圆角
    l1.contents = (__bridge id)(([UIImage imageNamed:@"1.jpg"].CGImage));//添加图片
    l1.borderColor = [UIColor redColor].CGColor;//边框颜色
    l1.borderWidth = 10;//边框的大小
    l1.opacity = 1;//透明度
    l1.shadowColor = [UIColor blackColor].CGColor;//阴影颜色
    l1.shadowOpacity = 1;//阴影透明度
    l1.shadowOffset = CGSizeMake(10, 10);
    l1.shadowRadius = 6;//半径区域大小

[self.view.layer addSublayer:l1];//在页面上显示效果
    _l1 = l1;

}
- (IBAction)didClicked:(id)sender {
//    _l1.bounds = CGRectMake(0, 0, 100, 100);
//    _l1.position = CGPointMake(0, 0);//中心点到坐标显示
//    _l1.anchorPoint = CGPointMake(0, 1);//锚点
    _l1.zPosition = 100;//在Z轴上方
    _l1.doubleSided = NO;//反面无
    _l1.transform = CATransform3DMakeRotation(M_PI, 1, 0, 0);//旋转
    _l2.transform = CATransform3DIdentity;
    
}
- (IBAction)didClicked2:(id)sender {
    _l2.transform = CATransform3DMakeRotation(M_PI, 1, 0, 0);
    _l1.transform = CATransform3DIdentity;
}

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

@end

 

ios layer 动画的更多相关文章

  1. ios layer 动画-(transform.rotation篇)

    x轴旋转: CABasicAnimation *theAnimation; theAnimation=[CABasicAnimation animationWithKeyPath:@"tra ...

  2. IOS UIVIEW layer动画 总结(转)

    转发自:http://www.aichengxu.com/article/%CF%B5%CD%B3%D3%C5%BB%AF/16306_12.html   IOS UIVIEW layer动画 总结, ...

  3. ios中layer动画和UIView动画代码总结

    kCATransitionFade淡出  kCATransitionMoveIn覆盖原图  kCATransitionPush推出  kCATransitionReveal底部显出来    pageC ...

  4. iOS核心动画学习整理

    最近利用业余时间终于把iOS核心动画高级技巧(https://zsisme.gitbooks.io/ios-/content/chapter1/the-layer-tree.html)看完,对应其中一 ...

  5. IOS 核心动画之CAKeyframeAnimation - iBaby

    - IOS 核心动画之CAKeyframeAnimation - 简单介绍 是CApropertyAnimation的子类,跟CABasicAnimation的区别是:CABasicAnimation ...

  6. iOS各种动画效果

    ios各种动画效果 最普通动画: //开始动画 [UIView beginAnimations:nil context:nil];  //设定动画持续时间 [UIView setAnimationDu ...

  7. IOS之动画

    IOS之动画   15.1 动画介绍 15.2 Core Animation基础 15.3 隐式动画 15.4 显式动画 15.5 关键帧显式动画 15.6 UIView级别动画 15.1 动画介绍 ...

  8. IOS 动画专题 --iOS核心动画

    iOS开发系列--让你的应用“动”起来 --iOS核心动画 概览 通过核心动画创建基础动画.关键帧动画.动画组.转场动画,如何通过UIView的装饰方法对这些动画操作进行简化等.在今天的文章里您可以看 ...

  9. ios 学习动画的套路 (一)

    你也肯定喜欢炫酷的动画! 在APP中,动画就是一个点睛之笔!可以给用户增加一些独特的体验感,估计也有许多的和我一样的,看着那些觉得不错的动画,也就只能流口水的孩子,毕竟~不知道从哪里下手去写!会连续的 ...

随机推荐

  1. 《JavaScript高级程序设计》读书笔记 ---Array 类型

    除了Object 之外,Array 类型恐怕是ECMAScript 中最常用的类型了.而且,ECMAScript 中的数组与其他多数语言中的数组有着相当大的区别.虽然ECMAScript 数组与其他语 ...

  2. MySQL 5.5 禁用 innodb

    MySQL 5.5 禁用 innodb 编辑: my.ini 添加: default-storage-engine=MYISAM skip-innodb

  3. android 一些数据转换方法

    android 一些数据转换方法 package com.ai9475.util; import android.content.Context; import android.content.res ...

  4. Hadoop查看目录文件大小的脚本

    hadoop fs -du / | awk '{ sum=$1 ;dir2=$3 ; hum[1024**3]="Gb";hum[1024**2]="Mb";h ...

  5. c# 使用 HttpWebRequest模拟登陆

    c# 使用 HttpWebRequest模拟登陆(附带验证码) 分类: C# .net2010-06-04 00:50 35647人阅读 评论(43) 收藏 举报 c#exceptionstreams ...

  6. 【Python】生成器和递归

    l=[1, 2, 3, 4, 5, 6] 如果l求和,毫无疑问可以使用递归,比如可以这样: def sum(l): res = 0 for i in l: if not isinstance(i, l ...

  7. CF 604B More Cowbell#贪心

    (- ̄▽ ̄)-* //把最大单独放,然后第二大的和最小的放一起,第三大的和第二小的放一起 //由此类推,求最大值,即为盒的最小值 #include<iostream> #include&l ...

  8. 1、Spring概述

    Java EE优缺点 我们都知道在2003年Spring兴起之前,企业普遍使用J2EE技术来开发企业级应用,为什么用J2EE呢?主要原因有以下几个: 1.Java本身的跨平台能力,可移植性强2.J2E ...

  9. Hihocoder 2月29日

      时间限制:2000ms 单点时限:1000ms 内存限制:256MB 描述 给定两个日期,计算这两个日期之间有多少个2月29日(包括起始日期). 只有闰年有2月29日,满足以下一个条件的年份为闰年 ...

  10. 第二次冲刺spring会议(第六次会议)

    [例会时间]2014/5/8 21:15 [例会地点]9#446 [例会形式]轮流发言 [例会主持]马翔 [例会记录]兰梦 小组成员:兰梦 ,马翔,李金吉,赵天,胡佳 奇