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

  • 相关阅读:
    ssm整合用到的依赖jar包(不充足)
    eclipse中Maven web项目的目录结构浅析
    何时使用抽象类?何时使用接口?
    $().attr() 和 $().css的区别
    AJAX防重复提交的办法总结
    CentOS 8 扩展LVM,更改xfs卷报错解决方法
    安装Minikube无法访问k8s.gcr.io的简单解决办法
    Windows 10、Ubuntu 18.04 双系统 双硬盘 安装经验总结
    转眼十年
    Dresdon二次开发
  • 原文地址:https://www.cnblogs.com/LiLihongqiang/p/7248932.html
Copyright © 2011-2022 走看看