zoukankan      html  css  js  c++  java
  • 核心动画2

    //

    //  ViewController.m

    //  UI-NO-36-1 核心动画-2

    //

    //  Created by 容伟 on 15/9/15.

    //  Copyright (c) 2015年 容伟. All rights reserved.

    //

     

    #import "ViewController.h"

     

    @interface ViewController (){

        

        CALayer *myLayer;

        CGFloat width;

        CALayer *imageLayer;

    }

     

    @end

     

    @implementation ViewController

     

    - (void)viewDidLoad {

        [super viewDidLoad];

        self.view.backgroundColor = [UIColor whiteColor];

        [self addLayer];

        [self addImageLayer];

     

     

    }

     

    - (void)addLayer {

        width = 100;

        

        myLayer = [[CALayer alloc] init];

        myLayer.backgroundColor = [UIColor whiteColor].CGColor;

        myLayer.shadowOpacity = 1.0;   //  阴影 默认的透明度是 0

        myLayer.shadowColor = [UIColor yellowColor].CGColor;

        myLayer.bounds = CGRectMake(0, 0, width, width);

        myLayer.position = self.view.center;

        myLayer.borderWidth = 2;

        myLayer.borderColor = [UIColor blackColor].CGColor;

        myLayer.cornerRadius = width/2;

        myLayer.shadowOffset = CGSizeMake(-1, -1);

    //    myLayer.contents = (__bridge id)([UIImage imageNamed:@"12.jpg"].CGImage);

    //    myLayer.masksToBounds = YES;

        

        

        [self.view.layer addSublayer:myLayer];

    }

     

    - (void)addImageLayer {

        imageLayer = [[CALayer alloc] init];

        imageLayer.bounds = CGRectMake(0, 0, width, width);

        imageLayer.position = self.view.center;

        imageLayer.cornerRadius = myLayer.cornerRadius;

        imageLayer.contents = (__bridge id)([UIImage imageNamed:@"12.jpg"].CGImage);

            imageLayer.masksToBounds = YES;

        imageLayer.borderWidth = 2;

        imageLayer.borderColor = [UIColor whiteColor].CGColor;

        [self.view.layer addSublayer:imageLayer];

    }

     

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

        UITouch *touch = [touches anyObject];

        [self changeStateWith:[touch locationInView:self.view]];

    }

     

    - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {

        UITouch *touch = [touches anyObject];

        [self changeStateWith:[touch locationInView:self.view]];

    }

     

    - (void)changeStateWith:(CGPoint)position {

        myLayer.position = position;

        width = width == 100 ? 300:100;

        myLayer.bounds = CGRectMake(0, 0, width, width);

        myLayer.cornerRadius = width/2;

        

        imageLayer.position = position;

        imageLayer.bounds = CGRectMake(0, 0, width, width);

        imageLayer.cornerRadius = myLayer.cornerRadius;

    }

     

    - (void)didReceiveMemoryWarning {

        [super didReceiveMemoryWarning];

        // Dispose of any resources that can be recreated.

    }

     

    @end

     

  • 相关阅读:
    REYES is working now!
    New Caching Mechanism
    Minimum Platform Requirements
    Multithreading Problem with Max SDK
    Bezier Triangles and NPatches
    elvish ray 0.5 beta History
    1.md
    Linux时间同步.md
    好久没写东西了
    从java到c# .net的转变(1)
  • 原文地址:https://www.cnblogs.com/wukun16/p/4884163.html
Copyright © 2011-2022 走看看