zoukankan      html  css  js  c++  java
  • iOS开发transform的使用

    //

    //  ViewController.m

    //  18-transform的使用

     

     

    #import "ViewController.h"

     

    @interface ViewController ()

    @property(nonatomic,assign)CGFloat ty;

     

    - (IBAction)up:(id)sender;

    - (IBAction)big;

    - (IBAction)rotate;

    - (IBAction)reset;

     

     

    @end

     

    @implementation ViewController

     

    - (void)viewDidLoad {

        [super viewDidLoad];

        // Do any additional setup after loading the view, typically from a nib.

    }

     

     

    - (void)didReceiveMemoryWarning {

        [super didReceiveMemoryWarning];

        // Dispose of any resources that can be recreated.

    }

     

     

    /**

     向上向下向左向右

     

     @param sender <#sender description#>

     */

    - (IBAction)up:(id)sender {

        

    //    NSLog(@"up");

        //通过父控件拿到按钮

        //可以通过父类拿到子类

        UIButton *headBtn = (UIButton *)[self.view viewWithTag:10];

        //2 通过fransform让头像向上走

        //tx 水平方向移动的范围

        //ty 竖直方向移动的范围

        

        /**

         CGAffineTransformMakeTranslation

         使用这个方法进行设置,每次变化都是以原始值进行

         变化的

     

         @param 0 <#0 description#>

         @param -10 <#-10 description#>

         @return <#return value description#>

         */

        //方法1: 开辟成员变量耗性能

    //    self.ty-= 10;

    //    headBtn.transform = CGAffineTransformMakeTranslation(0, self.ty);

        

        /**

         方法2:

         CGAffineTransformTranslate

         使用这个方法每次都是以CGAffineTransform 值进行变化的

         @param t#> <#t#> description#>

         @param tx#> <#tx#> description#>

         @param ty#> <#ty#> description#>

         @return <#return value description#>

         

         */

        headBtn.transform = CGAffineTransformTranslate(headBtn.transform, 0, -10);

     

        

        

    }

     

    //放大 缩小

    - (IBAction)big {

        [UIView beginAnimations:nil context:nil];

        [UIView setAnimationDuration:1.5];

        UIButton *headBtn = (UIButton *)[self.view viewWithTag:10];

        headBtn.transform = CGAffineTransformScale(headBtn.transform, 1.5, 1.5);

        [UIView commitAnimations];

    }

     

    /**

     旋转

     */

    - (IBAction)rotate {

        UIButton *headBtn = (UIButton *)[self.view viewWithTag:10];

        headBtn.transform = CGAffineTransformRotate(headBtn.transform, M_PI_4);

        

        

    }

     

    /**

     复位

     */

    - (IBAction)reset {

        UIButton *headBtn = (UIButton *)[self.view viewWithTag:10];

        headBtn.transform = CGAffineTransformIdentity;

        

    }

     

     

     

     

     

     

     

     

    @end

  • 相关阅读:
    推荐系统入门笔记2--信息检索 Lucene
    Mybatis多个参数,其中有hashMap的写法
    Java中fastjson的toJSONString结果为空{}
    Linux中less命令出现ESC乱码
    关于博客
    【Uni-App】关于获取手机系统信息的项目实践
    mysql 服务列表找不到
    服务网格与Istio
    ARM架构服务器如何运行EasyNVR软件提示无法识别二进制文件排查及解决
    关于EasyNVR拉流摄像头的视频流存在视频流锁定机制的问题说明
  • 原文地址:https://www.cnblogs.com/LiLihongqiang/p/7248932.html
Copyright © 2011-2022 走看看