截取屏幕并保存到本地

 /* Capture the screenshot */
    UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, YES, 0.0f);

    if ([self.view drawViewHierarchyInRect:self.view.bounds afterScreenUpdates:YES]){
        NSLog(@"Successfully draw the screenshot.");
    } else {
        NSLog(@"Failed to draw the screenshot.");
    }
    UIImage *screenshot = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    
    /* Save it to disk */
    NSFileManager *fileManager = [[NSFileManager alloc] init];
    NSURL *documentsFolder = [fileManager URLForDirectory:NSDocumentDirectory
                                                 inDomain:NSUserDomainMask
                                        appropriateForURL:nil
                                                   create:YES
                                                    error:nil];
    NSURL *screenshotUrl = [documentsFolder
                           URLByAppendingPathComponent:@"screenshot.png"];
    
    NSData *screenshotData = UIImagePNGRepresentation(screenshot);
    
    if ([screenshotData writeToURL:screenshotUrl atomically:YES]){
        NSLog(@"Successfully saved screenshot to %@", screenshotUrl);
    } else {
        NSLog(@"Failed to save screenshot.");
    }

posted @ 2015-07-08 10:55  huang303513  阅读(322)  评论(0编辑  收藏  举报