iOS_23_undress Girl

最终效果图:









关键代码如下:




//
//  BeyondViewController.h
//  24_showGirl
//
//  Created by beyond on 14-8-26.
//  Copyright (c) 2014年 com.beyond. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface BeyondViewController : UIViewController
@property (nonatomic,weak) IBOutlet UIImageView *clothes;
@end


//
//  BeyondViewController.m
//  24_showGirl
//
//  Created by beyond on 14-8-26.
//  Copyright (c) 2014年 com.beyond. All rights reserved.
//

#import "BeyondViewController.h"

@interface BeyondViewController ()
{
    BOOL canEarse;
}

@end

@implementation BeyondViewController
// 触摸开始
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
	UITouch *touch = [touches anyObject];
    // 如果触摸点落在ClothesImgView上面
	if([touch view]==_clothes)
	{
		canEarse = YES;
	}
	
}
// 触摸进行中
-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
	UITouch *touch = [touches anyObject];
	if(canEarse)
	{
        // 获得触摸点的坐标
		CGPoint currentPoint = [touch locationInView:_clothes];
        // 开启上下文
		UIGraphicsBeginImageContext(self.clothes.frame.size);
        // 将原图画到上下文中,以便进行像素处理
		[_clothes.image drawInRect:_clothes.bounds];
        // 清除触摸点附近区域的一些像素
		CGContextClearRect (UIGraphicsGetCurrentContext(), CGRectMake(currentPoint.x, currentPoint.y, 30, 30));
        // 重新画上去
		_clothes.image = UIGraphicsGetImageFromCurrentImageContext();
        // 关闭上下文
		UIGraphicsEndImageContext();
	}
}
// 触摸结束
-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
	canEarse = NO;
	
}
@end




郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。