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

iOS获得截屏效果

2015-06-10 17:12 393 查看
功能:有时候我们做返回上级或者说pop动画的时候,我们需要获取上一个的视图(ViewController)的截图,你可以试一下下面的方法

- (UIImage *)re_screenshot

{

    UIGraphicsBeginImageContextWithOptions(self.bounds.size, NO, [UIScreen mainScreen].scale);

    

    if ([self respondsToSelector:@selector(drawViewHierarchyInRect:afterScreenUpdates:)]) {

       

        NSInvocation* invoc = [NSInvocation invocationWithMethodSignature:

                              [self methodSignatureForSelector:

                               @selector(drawViewHierarchyInRect:afterScreenUpdates:)]];

        [invoc setTarget:self];

        [invoc setSelector:@selector(drawViewHierarchyInRect:afterScreenUpdates:)];

        CGRect arg2 = self.bounds;

        BOOL arg3 = YES;

        [invoc setArgument:&arg2 atIndex:2];

        [invoc setArgument:&arg3 atIndex:3];

        [invoc invoke];

    } else {

        [self.layer renderInContext:UIGraphicsGetCurrentContext()];

    }

    

    UIImage *image = UIGraphicsGetImageFromCurrentImageContext();

    UIGraphicsEndImageContext();

    return image;

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