0

可能重复:
为什么 glReadPixels() 在 iOS 6.0 中的此代码中失败?

我正在使用 OpenGL 开发游戏,需要在最佳拍摄时截屏并上传 Facebook,但是当我截屏时,它只有黑屏。我所做的 ?我还在链接中使用代码: 以编程方式获取 UIview+glview 和类似代码的屏幕,但没有成功。

我正在起诉代码:http: //developer.apple.com/library/ios/#qa/qa1704/_index.html

但是所有代码都会在模拟器中生成图像而不是在设备中(在设备中只有黑色或白色)

4

2 回答 2

0

试试这个,这将截取视图并保存到设备相册中。

-(IBAction)captureScreen:(id)sender
{
    UIGraphicsBeginImageContext(self.view.bounds.size);
    [self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
        UIImage *snapImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    UIImageWriteToSavedPhotosAlbum(snapImage, nil, nil, nil);
}
于 2013-01-17T12:17:04.223 回答
0

如果您想截屏,也可以尝试使用该代码并检查:

    CGRect screenRect = [[UIScreen mainScreen] bounds];
    UIGraphicsBeginImageContextWithOptions(screenRect.size, NO, 0.0);
    [self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
    UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
于 2013-01-17T04:41:07.750 回答