zoukankan      html  css  js  c++  java
  • UIImageView01

    //
    //  ViewController.m
    //  UIImageView01
    //
    //  Created by cqy on 16/2/13.
    //  Copyright © 2016年 程清杨. All rights reserved.
    //

    #import "ViewController.h"

    @interface ViewController (){
        UIImageView *img;
    }

    @end

    @implementation ViewController

    - (void)viewDidLoad {
        [super viewDidLoad];
        //创建UIImageView
        //通过图⽚名来初始化⼀个UIImageView类。
        img = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"cat01"]];
        img.frame = CGRectMake(120, 220, 200, 300);
        [self.view addSubview:img];
        //注意:ImageView的默认是NO,是关闭交互。要将userInteractionEnabled(响应者链是否交互)设置为YES
        img.userInteractionEnabled = YES;
        //添加手势
        //轻拍⼿势:
        //创建轻拍手势识别器
        UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapAction:)];
          [self->img addGestureRecognizer:tap];
        // ⻓按⼿势
        UILongPressGestureRecognizer *longPress =
        [[UILongPressGestureRecognizer alloc]initWithTarget:self action:@selector(longPressAction:)];
        longPress.minimumPressDuration = 0.5;
        [self->img addGestureRecognizer:longPress];
        //旋转⼿势
        // 旋转
        UIRotationGestureRecognizer *rotation =
        [[UIRotationGestureRecognizer alloc]initWithTarget:self action:@selector(rotationAction:)];
        [self->img addGestureRecognizer:rotation];
       // 捏合⼿势:
        UIPinchGestureRecognizer *pinch =
        [[UIPinchGestureRecognizer alloc]initWithTarget:self action:@selector(pinchAction:)];
        [self->img addGestureRecognizer:pinch];
       // 平移⼿势:
        UIPanGestureRecognizer *pan = [[UIPanGestureRecognizer alloc]initWithTarget:self action:@selector(panAction:)];
        [self->img addGestureRecognizer:pan];
        //轻扫
       
       
        // Do any additional setup after loading the view, typically from a nib.
    }
    // 轻拍⼿势响应⽅法
    - (void)tapAction:(UITapGestureRecognizer *)sender{
        NSLog(@"我是轻拍⼿势..");
        // 换图⽚
        // 获取⼿势图⽚
        UIImageView *temp = (UIImageView *)sender.view;
        temp.image = [UIImage imageNamed:@"cat02"];
    }
    // ⻓按响应⽅法
    - (void)longPressAction:(UILongPressGestureRecognizer *)sender{
        NSLog(@"⻓按⼿势");
       
        if (sender.state == UIGestureRecognizerStateBegan) {
            NSLog(@"⻓按开始..");
            [UIView animateWithDuration:1 animations:^{
                // 修改view的frame
                CGRect temp1 = sender.view.frame;
                temp1.size.width +=50;
                temp1.size.height +=50;
                // 修改完成附回
                sender.view.frame = temp1;
                sender.view.alpha = 0.4;
            }];
        }else if (sender.state == UIGestureRecognizerStateEnded){
            NSLog(@"⻓按结束..");
            [UIView animateWithDuration:1 animations:^{
                // 修改view的frame
                CGRect temp1 = sender.view.frame;
                temp1.size.width -=50;
                temp1.size.height -=50;
                // 修改完成附回
                sender.view.frame = temp1;
                sender.view.alpha = 1;
            }];
        } 
    }
    // 旋转⼿势响应⽅法
    - (void)rotationAction:(UIRotationGestureRecognizer *)sender{
        NSLog(@"我是旋转⼿势..");
        sender.view.transform =
        CGAffineTransformRotate(sender.view.transform,
                                sender.rotation);
        sender.rotation = 0;
    }
    // 捏合⼿势响应⽅法
    - (void)pinchAction:(UIPinchGestureRecognizer *)sender{
        NSLog(@"我是捏合⼿势");
        sender.view.transform =
        CGAffineTransformScale(sender.view.transform, sender.scale,
                               sender.scale);
        sender.scale = 1;
    }
    // 平移⼿势响应⽅法
    - (void)panAction:(UIPanGestureRecognizer *)sender{
        NSLog(@"我是平移⼿势..");
        CGPoint point = [sender translationInView:sender.view];
        sender.view.transform =
        CGAffineTransformTranslate(sender.view.transform, point.x,
                                   point.y);
        // 将偏移量归零
        [sender setTranslation:CGPointZero inView:sender.view];
    }



    - (void)didReceiveMemoryWarning {
        [super didReceiveMemoryWarning];
        // Dispose of any resources that can be recreated.
    }
    @end
  • 相关阅读:
    zabbix真的很简单 (安装篇)
    flask 快速入门01 之 `Hello World!`
    结对编程作业
    XNA学习笔记(一)
    Ambari API 验证方式
    浅析Kerberos原理,及其应用和管理
    nginx进程属主问题讨论
    编码规范
    用samba访问windows目录[浙大嵌入式系统]
    在树莓派上格式化U盘[浙大嵌入式系统]
  • 原文地址:https://www.cnblogs.com/iQingYang/p/5193195.html
Copyright © 2011-2022 走看看