当点击iOS SDK中的单元格时,如何从tableviewcell获取图像(使用CGContext)

时间:2014-04-07 06:19:21

标签: iphone objective-c ipad ios6

如何使用与我点击的tableviewcell相同的CGContext进行成像。我得到了我拍摄的细胞框架。我见过许多CGContext的例子,它只将大小作为输入并将图像转换为该大小。

但是我希望得到tableviewcell的图像,因为它具有相同的帧。任何人都可以建议我怎么做。

1 个答案:

答案 0 :(得分:1)

我猜你需要在敲击你的细胞之后在适当的地方加入这两个逻辑。 有一种方法- (CGRect)rectForRowAtIndexPath:(NSIndexPath *)indexPath;可以获取当前单元格的CGRect

  1. 找到被点击的CGRect的{​​{1}}。
  2. 从第1步的UITableViewCell获取CGSzie

    CGRect
  3. 这应该可以解决您的问题,可能需要一些调整。

    以下是用法:

    -(UIImage *) screenshot:(CGRect )cellRect onCell:(UITableViewCell)cell
     {
       UIGraphicsBeginImageContext(cellRect.size);
    
       CGContextRef context=UIGraphicsGetCurrentContext();
       [cell.layer renderInContext:context];
    
       UIImage *image=UIGraphicsGetImageFromCurrentImageContext();
       UIGraphicsEndImageContext();
    
       return image;
     }
    

    }

    屏幕:选中第1行

    enter image description here

    将图像视图加载到新视图控制器

    enter image description here