zoukankan      html  css  js  c++  java
  • UIGesture 缩放与旋转手势

     1 //
     2 //  ViewController.m
     3 //  UIWindowsApp
     4 //
     7 //
     8 
     9 #import "ViewController.h"
    10 #import "ViewController2.h"
    11 
    12 @interface ViewController ()
    13 
    14 @end
    15 
    16 @implementation ViewController
    17 
    18 
    19 
    20 
    21 - (void)viewDidLoad {
    22     [super viewDidLoad];
    23     
    24     UIImage* image = [UIImage imageNamed:@"1.jpg"];
    25     
    26     UIImageView* _imageView= [[UIImageView alloc]init];
    27     
    28     _imageView.image = image;
    29     
    30     _imageView.frame = CGRectMake(50, 100, 220, 300);
    31     
    32     //_imageView.tag = 101;
    33     
    34     //是否开启交互事件响应开关,默认值为NO
    35     _imageView.userInteractionEnabled = YES;
    36     
    37     [self.view addSubview:_imageView];
    38 
    39     _pinchGes = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(pinchAct:)];
    40    
    41 //    NSLog(@"fff.");
    42     [_imageView addGestureRecognizer:_pinchGes];
    43     
    44     _rotGes = [[UIRotationGestureRecognizer alloc] initWithTarget:self action:@selector(rotAct:)];
    45     
    46     [_imageView addGestureRecognizer:_rotGes];
    47     
    48     _pinchGes.delegate = self;
    49     _rotGes.delegate = self;
    50     
    51     
    52 }
    53 
    54 //是否可以同时响应两个手势,yes 可以,no 不可以
    55 -(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
    56 {
    57     return YES;
    58 }
    59 
    60 -(void) rotAct:(UIRotationGestureRecognizer*) rot
    61 {
    62     NSLog(@"ddddd");
    63     UIImageView * _imageView = (UIImageView*) rot.view;
    64     
    65     _imageView.transform = CGAffineTransformRotate(_imageView.transform, rot.rotation);
    66     
    67     rot.rotation = 0;
    68 }
    69 
    70 
    71 
    72 
    73 
    74 -(void) pinchAct:(UIPinchGestureRecognizer*) pinch
    75 {
    76     
    77     //获得监控图像的视图
    78     UIImageView * _imageView = (UIImageView*) pinch.view;
    79     
    80     //p1:原来的矩阵
    81     //p2:x方向的缩放
    82     //p3:y方向的缩放
    83     //返回值是新的缩放后的矩阵变换
    84     _imageView.transform = CGAffineTransformScale(_imageView.transform, pinch.scale, pinch.scale);
    85 
    86     //scale>1 放大
    87     //scale<1 缩小
    88     pinch.scale = 1;
    89 }
    90 - (void)didReceiveMemoryWarning {
    91     [super didReceiveMemoryWarning];
    92     // Dispose of any resources that can be recreated.
    93 }
    94 
    95 
    96 @end
     1 //
     2 //  ViewController.h
     3 //  UIWindowsApp
     4 
     5 
     6 #import <UIKit/UIKit.h>
     7 
     8 @interface ViewController : UIViewController<UIGestureRecognizerDelegate>
     9 {
    10    
    11     //定义缩放,旋转手势
    12     UIPinchGestureRecognizer* _pinchGes;
    13     
    14     UIRotationGestureRecognizer* _rotGes;
    15     
    16     
    17 }
    18 
    19 //属性定义
    20 //@property(retain,nonatomic) UITextField* textField;
    21 
    22 
    23 
    24 
    25 @end 
  • 相关阅读:
    今日头条、Face++开发岗面经
    美团offer面经
    成都百度测试开发一二面面经
    美团四面面经
    久邦数码(3G门户)面试
    58 面试
    好未来提前批
    百度提前批
    新浪面经
    Java Programs
  • 原文地址:https://www.cnblogs.com/vector11248/p/7606124.html
Copyright © 2011-2022 走看看