2016-06-15 4 views
0

は時々、私は私のアプリを実行すると、コード"myFilter.outputImage!、fromRect:myFilter.outputImage!.extent"を安全に実行する方法?私はなぜ=/</p> <p>を知らない

​​

のこの行は、アプリがクラッシュし、私は無事にこの行を実行したいです。私はmyFilter.outputImage?を試しましたが、それは!だけ必要です。では、どうすればこれらの行を安全に実行できますか?

私はガードを試してみたかったが、私はそれらのラインを通過したくない。この場合、フィルタはreturnの場合には適用されませんが、私はそれを望ましくありません。すべてのフィルタを正常に適用したい。

改善がありますか?

+0

エラーメッセージは何ですか? – Alexander

+0

@AMomchilovが得ただけで、この '#6 クラッシュ:com.apple.root.default-QoSのEXC_BREAKPOINT 0x000000010009617c' – John

答えて

0

この行を安全に実行したいです。私が試した:あなたは?を使用することはできませんので

context.createCGImage(myFilter.outputImage?, 

createCGImageの最初の引数は()、オプションのタイプではありません。 if-letを使用することができます:

if let validImage = myFilter.outputImage { 
    let outputCGImage = context.createCGImage(validImage, fromRect: validImage.extent) 
} 
else { 
    //Do something else 
} 
+0

私のコードは次のようになります。' outputCGImage = context.createCGImage(myFilter.outputImage!fromRectを聞かせて:myFilter.outputImage!エクステント) newImage = UIImage(CGImage:outputCGImage、scale:image.scale、orientation:image.imageOrientation) return newImage'。だから私は画像を返す必要があります – John

+0

*私は画像を返す必要があります*何もそれをやめていませんが、時には1つではないので、あなたはmyFilter.outputImageから画像を返すことはできません。その場合、他のものからイメージを作成する必要があります。 – 7stud

+0

はい、私は知っている/そう、正直言って、なぜそれが時々持っていないのか知りたいのですが。私は空白のセルを表示したくないので、毎回有効な画像を返そうとしています。 – John

関連する問題