1

このコードには何か問題があるはずです:

+ (UIImage*)captureView:(UIView *)theView {
    UIGraphicsBeginImageContext(theView.frame.size);
    [theView.layer renderInContext:UIGraphicsGetCurrentContext()];
    UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return newImage;
}

これを使用すると、Xcode から次のエラー メッセージが表示されます。

malloc: * オブジェクト 0x103f000 のエラー: 解放されるポインターが割り当てられませんでした *デバッグするために malloc_error_break にブレークポイントを設定します

そこにメモリ管理エラーは見られません。他の誰かですか?

4

2 に答える 2

1

I had the same warning. But, it does not occur in 3.1 or above.

于 2010-03-11T14:09:28.143 に答える
0

見ないでください。ビルドで有効に設定NSZombieして追跡します。

おそらく一時的な自動解放プール内にあるクラスメソッドから自動解放された UIImage を返すことに関連している可能性があります。そのプールのドレインによってイメージが破壊されている可能性があります。テストするには、メソッドをインスタンス メソッドに移動し、問題が解決するかどうかを確認します。

于 2010-03-11T13:35:19.950 に答える