UItableView 所有内容保存为图片

将所有的UITableView保存为图片,因为UITableView只能保存显示当前,所以,就单个保存后,合并为一张图片

代码如下:

view source
print ?
01 -(IBAction)savePic:(id)sender
02  
03 {
04  
05     //支持retian高分辨率
06  
07     UIGraphicsBeginImageContextWithOptions(self.view.frame.size, YES, 0.0);
08  
09     float curH = mTableView.contentSize.height;
10  
11     UIImageView *allView = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 320, curH)];
12  
13     for (float f = 0; f < curH; f+=460)
14  
15     {
16  
17         mTableView.contentOffset = CGPointMake(0, f);
18  
19             [self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
20  
21         UIImageView *imgV = [[UIImageView alloc]initWithImage:UIGraphicsGetImageFromCurrentImageContext()];
22  
23         imgV.frame = CGRectMake(0, f, 320, 460);
24  
25         [allView addSubview:imgV];
26  
27         [imgV release];
28  
29     }
30  
31     UIGraphicsEndImageContext();
32  
33     //保存图片
34  
35    UIGraphicsBeginImageContextWithOptions(allView.frame.size, YES, 0.0);
36  
37     [allView.layer renderInContext:UIGraphicsGetCurrentContext()];
38  
39     UIImage *img = UIGraphicsGetImageFromCurrentImageContext();
40  
41     UIGraphicsEndImageContext();
42  
43     [allView release];
44  
45     [UIImagePNGRepresentation(img) writeToFile:@"/users/test/desktop/font.png" atomically:YES];
46  
47 }

你可能感兴趣的:(UItableView 所有内容保存为图片)