点击按钮的点击事件
[mybutton addTarget:self action:@selector(captureView)
forControlEvents:UIControlEventTouchUpInside];
- (void)captureView {
UIGraphicsBeginImageContext(CGSizeMake(320,480));
CGContextRef context = UIGraphicsGetCurrentContext();
[self.view.layer renderInContext:context];
UIImage *screenShot = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
NSLog(@"%@",screenShot);
}
我的屏幕截图打印UIImage:0x4b249c0。这个正确的代码是否可以在屏幕上显示iphone应用程序的特定区域?此图像存储在该特定时间的位置。我怎么能看到那些图像?
答案 0 :(得分:0)
UIImage只是您拍摄的屏幕截图的内存表示。如果你想保存它,你需要把它写出来。例如,以下代码会将该图像写入用户的照片库:
UIImageWriteToSavedPhotosAlbum(screenShot, self, @selector(image:didFinishSavingWithError:contextInfo:), NULL);
请务必保留图片并将其发布到-image:didFinishSavingWithError:contextInfo:
回调方法。
您还可以使用以下代码手动将图像另存为PNG或JPEG:
NSData *imageData = UIImagePNGRepresentation(screenShot);
[imageData writeToFile:pathToSaveImage atomically:YES];
答案 1 :(得分:0)
此处您的图像位于内存中,您需要将其保存在Bundle中的某处。