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

  • 相关阅读:
    Android 修改应用程序字体
    Activity A 跳转到Activity B 生命周期
    Android调用系统设置
    最近遇到adb connection 问题,总结一下
    今日写一篇散文 Textview settext 方法不能放入 int 参数 不然报错!
    计时线程Runnable和Handler的结合
    JMF 下载安装与测试 测试成功
    基本数据类型的介绍及转换,基本数据类型与字符串之间转换,字符串与字符数组之间转换以及字符串与字节数组之间转换
    超实用的Eclipse快捷键大全(解密为什么他们的代码写的又快又好~)
    JDK的下载、安装及Eclipse安装详细教程(内附:网盘win64版JDK安装包)
  • 原文地址:https://www.cnblogs.com/LiLihongqiang/p/7248932.html
Copyright © 2011-2022 走看看