xcode - 触摸移动

 

第一步 创建一个UIView类  命名MoveView

#import "MoveView.h"

@implementation MoveView


/** 
移动事件
*/
-(void)touchesMoved:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{
 
   UITouch * touch = [touches anyObject];
    CGPoint curp=[touch locationInView:self];
    CGPoint preP=[touch previousLocationInView:self];
    
    self.transform = CGAffineTransformTranslate(self.transform, curp.x-preP.x, curp.y-preP.y);
}

@end

 

在ViewController 里面的代码有注释

#import "ViewController.h"

#import "MoveView.h"
@interface ViewController ()
//定义个自定义UIView
@property(nonatomic, weak) MoveView * Uview;
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    //创建一个UIView
    MoveView * mView = [[MoveView alloc]initWithFrame:CGRectMake(20, 20, 100, 100)];
    //设置背景颜色
    mView.backgroundColor = [self randomColor] ;
    //创建一个定时器
    [NSTimer scheduledTimerWithTimeInterval:0.5 target:self selector:@selector(click) userInfo:nil repeats:YES];
    self.Uview = mView;
    //加入控件
    [self.view addSubview:mView];
}

/**
 重绘图行
 */
-(void)click{
    self.Uview.backgroundColor = [self randomColor];
}
/**
 生产随机颜色
 */
- (UIColor *)randomColor{
    return [UIColor colorWithRed:arc4random_uniform(256)/255.0 green:arc4random_uniform(256)/255.0 blue:arc4random_uniform(256)/255.0 alpha:1];
}


@end

 

posted @ 2016-06-27 11:30  与格律上  阅读(228)  评论(0编辑  收藏  举报