0

iOS7のアプリを作っています。

そして、このアプリはキャプチャできます。しかし、それはaddsubview画像のホワイトノイズです。
私を助けてください。

iOS6とiOS5にはホワイトノイズがありません。

これは私のコードです。

CGRect rect = [[UIScreen mainScreen] bounds];
UIGraphicsBeginImageContextWithOptions(rect.size, NO, 0);
CGContextRef ctx = UIGraphicsGetCurrentContext();
CGContextFillRect(ctx, rect);
[self.view.layer renderInContext:ctx];
NSdate pngData = UIImagePNGRepresentation (UIGraphicsGetImageFromCurrentImageContext ());

UIimage でアルファ png 画像を使用します。ビューにサブビューを追加します。

ホワイトノイズいませここ

4

2 に答える 2

1

iOS 7 ではスクリーン ショットの作成方法が異なります

UIGraphicsBeginImageContextWithOptions(self.bounds.size, NO, self.window.screen.scale);
[self drawViewHierarchyInRect:self.frame afterScreenUpdates:NO];    
UIImage * image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
于 2013-11-01T21:18:47.680 に答える
0

CGContextFillRect四角形を何で塗りつぶすために使用していますか? 塗りつぶしの色またはパターンを定義していないようです。前の回答で説明したように、iOS7 には新しいメソッドがありますが、適切にコーディングされていれば、以前のメソッドは引き続き機能するはずです。

私の推測では、以前の OS では、塗りつぶしの色がデフォルトで 0 になっているか、そこに適切にコーディングされていて、iOS7 では、たまたまメモリなどにあるものを使用している必要があります。CGContextSetFillColorWithColorの前に電話してみてくださいCGContextFillRect

于 2013-11-17T21:46:59.533 に答える