当前位置: 代码迷 >> Iphone >> 【代码札记】对UIView进行截图
  详细解决方案

【代码札记】对UIView进行截图

热度:267   发布时间:2016-04-25 05:23:18.0
【代码笔记】对UIView进行截图

一,效果图。

二,工程图。

三,代码。

RootViewController.m

复制代码
#import "RootViewController.h"@interface RootViewController ()@end@implementation RootViewController- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil{    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];    if (self) {        // Custom initialization    }    return self;}- (void)viewDidLoad{    [super viewDidLoad];    // Do any additional setup after loading the view.        //UIView    UIView *view=[[UIView alloc]initWithFrame:CGRectMake(50, 100, 200, 50)];    view.backgroundColor=[UIColor redColor];    [self.view addSubview:view];        //在UIImageView中显示截取的图片    UIImageView *imageView=[[UIImageView alloc]initWithFrame:CGRectMake(50, 200, 200, 100)];    imageView.image=[self screenShotView:view];    [self.view addSubview:imageView];}#pragma -mark -functions// 对指定视图进行截图- (UIImage *)screenShotView:(UIView *)view{    UIImage *imageRet = nil;        if (view)    {        if(UIGraphicsBeginImageContextWithOptions)        {            UIGraphicsBeginImageContextWithOptions(view.frame.size, NO, 0.0);        }        else        {            UIGraphicsBeginImageContext(view.frame.size);        }                //获取图像        [view.layer renderInContext:UIGraphicsGetCurrentContext()];        imageRet = UIGraphicsGetImageFromCurrentImageContext();        UIGraphicsEndImageContext();    }else{    }        return imageRet;}- (void)didReceiveMemoryWarning{    [super didReceiveMemoryWarning];    // Dispose of any resources that can be recreated.}
复制代码