您的位置:首页 > 移动开发 > IOS开发

iOS-截图和把截图封装成一个方法

2015-09-10 11:25 302 查看
//
//  UIImage+Tools.h
//  截屏
//
//  Created by YaguangZhu on 15/9/10.
//  Copyright (c) 2015年 YaguangZhu. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface UIImage (Tools)
+(instancetype)imageWithCaptureView:(UIView *)view;

@end

//
//  UIImage+Tools.m
//  截屏
//
//  Created by YaguangZhu on 15/9/10.
//  Copyright (c) 2015年 YaguangZhu. All rights reserved.
//

#import "UIImage+Tools.h"

@implementation UIImage (Tools)

+ (instancetype)imageWithCaptureView:(UIView *)view
{
UIGraphicsBeginImageContextWithOptions(view.bounds.size, NO, 0.0);
CGContextRef ctx = UIGraphicsGetCurrentContext();
[view.layer renderInContext:ctx];

UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();

return newImage;
}
@end


//
//  ViewController.m
//  截屏
//
//  Created by YaguangZhu on 15/9/10.
//  Copyright (c) 2015年 YaguangZhu. All rights reserved.
//

#import "ViewController.h"
#import "UIImage+Tools.h"
@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
UIImage *newImage = [UIImage imageWithCaptureView:self.view];
NSData *data = UIImagePNGRepresentation(newImage);

[data writeToFile:@"/Users/yaguangzhu/Desktop/00d1.png" atomically:YES];

}
- (void)CaptureView
{
UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, NO, 0.0);
CGContextRef ctx = UIGraphicsGetCurrentContext();
[self.view.layer renderInContext:ctx];

UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();
NSData *data = UIImagePNGRepresentation(newImage);

[data writeToFile:@"/Users/yaguangzhu/Desktop/00d1.png" atomically:YES];
}

- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}

@end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: