ViewController.h
// // ViewController.h // 放大鏡例子 // // Created by 杜甲 on 14-3-10. // Copyright (c) 2014年 杜甲. All rights reserved. // #import#import MagnifierV.h @interface ViewController : UIViewController @property (strong , nonatomic) MagnifierV* magnifier; @end
// // ViewController.m // 放大鏡例子 // // Created by 杜甲 on 14-3-10. // Copyright (c) 2014年 杜甲. All rights reserved. // #import ViewController.h @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. UIImageView* image = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@changmen.jpg]]; image.frame = CGRectMake(0, 0, 320, 548); [self.view addSubview:image]; /*要將放大鏡視圖最後 addSubview 到視圖中*/ self.magnifier = [[MagnifierV alloc] initWithFrame:CGRectMake(0, 0, 80, 80)]; self.magnifier.viewToMagnify = self.view; [self.view addSubview:self.magnifier]; self.magnifier.hidden = YES; } - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { self.magnifier.hidden = NO; UITouch* touch = [touches anyObject]; CGPoint point = [touch locationInView:self.view]; self.magnifier.touchPoint = point; [self.magnifier setNeedsDisplay]; } - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event { [self handleAction:touches]; } - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event { self.magnifier.hidden = YES; } - (void)handleAction:(id)timerObj { NSSet *touches = timerObj; UITouch *touch = [touches anyObject]; CGPoint point =[touch locationInView:self.view]; self.magnifier.touchPoint = point; [self.magnifier setNeedsDisplay]; } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } @end