截屏功能

简介:

给UIView添加扩展方法:

// 截屏
- (UIImage *)captureScreenshot {
    UIGraphicsBeginImageContextWithOptions(self.bounds.size, NO, [UIScreen mainScreen].scale);
    
    // IOS7及其后续版本
    if ([self respondsToSelector:@selector(drawViewHierarchyInRect:afterScreenUpdates:)]) {
        NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:
                               [self methodSignatureForSelector:
                                @selector(drawViewHierarchyInRect:afterScreenUpdates:)]];
        [invocation setTarget:self];
        [invocation setSelector:@selector(drawViewHierarchyInRect:afterScreenUpdates:)];
        CGRect arg2 = self.bounds;
        BOOL arg3 = YES;
        [invocation setArgument:&arg2 atIndex:2];
        [invocation setArgument:&arg3 atIndex:3];
        [invocation invoke];
    } else { // IOS7之前的版本
        [self.layer renderInContext:UIGraphicsGetCurrentContext()];
    }
    
    UIImage *screenshot = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return screenshot;
}


目录
相关文章
|
13天前
|
编解码
🖥️Electron实现录屏软件(二)——指定区域录制
🖥️Electron实现录屏软件(二)——指定区域录制
|
7月前
|
数据安全/隐私保护 Windows
实用分享-免费录屏工具(无水印)
实用分享-免费录屏工具(无水印)
|
10月前
|
测试技术 API 图形学
DXGI快速截屏录屏技术
DXGI快速截屏录屏技术
794 0
|
图形学
Unity3d 截屏
Unity3d 截屏
75 0
|
存储 前端开发 JavaScript
实现Web端自定义截屏(上)
实现Web端自定义截屏(上)
实现Web端自定义截屏(上)
|
存储 前端开发 JavaScript
实现Web端自定义截屏(下)
实现Web端自定义截屏(下)
实现Web端自定义截屏(下)
|
Linux 网络安全 数据安全/隐私保护
录屏软件推荐
录屏软件推荐
187 0
编写一个uiautomatorview截屏获取.uix工具
有的时候因为电脑的某些原因,uiautomatorview不好用了,无法启动,无法使用,各种改环境也无济于事。 有的人会尝试使用weditor,亦或是一直使用的是appium自带的定位工具。
178 0
编写一个uiautomatorview截屏获取.uix工具
|
Java Android开发 内存技术