コードがうまく動作してクラッシュすることもあるので、これは奇妙な問題です。しかし、最近は墜落しているだけです。UIViewの画像キャプチャからのUIImageがクラッシュし続けますか? Swift iOS9
私はuiviewから得ているイメージを持っています。私は以下のキャプチャ関数を使用して画像を取得し、次に画像をプロパティに送り、prepareForSegueを次のビューコントローラに送るようにします。画像を返すときにコードがクラッシュし続けます。私はそれをデバッグし、プロパティが無限から確実に画像を含むようになったのを見ましたが、それをクラッシュさせる時間があるときです。しかし、クラッシュはセグのキャプチャ機能の中にあります。イメージが返されるので(デバッガはそれを示した)、それは異常ですが、キャプチャリターンはクラッシュが起きている場所です。
//This seems to be the main problem
return capturedImage
をし、ここで返さcapturedImage
Thread1: EXC_BAD_INSTRUCTION (code=EXC_1336_INVOP, subcode=0x0)
私もこのラインでクラッシュを得ていたが、何とかクラッシュが停止のためのクラッシュログです:クラッシュがで発生します。それがクラッシュ停止したため、私はこの1つのためにクラッシュログを置くことはできませんが、私はなぜ知らないか、それが
view!.layer.renderInContext(UIGraphicsGetCurrentContext()!)
任意のアイデアを停止する方法?
Btw私はストーリーボードボタンを使用してセグをトリガーします。
class MainController: UIViewController {
@IBOutlet weak var mainView: UIView!
var mainPic: UIImage?
override func viewDidLoad() {
super.viewDidLoad()
}
//MARK: -Func to convert image in uiview to uiimage
//get image from UIView, render it for Retina compatibility, then return it as an UIImage
func captureAndRenderUIImageFromUIView(view:UIView?) -> UIImage {
UIGraphicsBeginImageContextWithOptions((view?.bounds.size)!, true, 0.0)
view!.drawViewHierarchyInRect(view!.bounds, afterScreenUpdates: true)
//I was also getting crashes on this line but they stopped??
view!.layer.renderInContext(UIGraphicsGetCurrentContext()!)
let capuredImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
//The return value is where the crash keeps happening
return capturedImage
}
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
self.mainPic = self.captureAndRenderUIImageFromUIView(mainView)
if segue.identifier == "toDetailController"{
let detailVC = segue.destinationViewController as! DetailController
detailVC.detailPic = self.mainPic!
}
}
}
}
はここではあり
class DetailController: UIViewController {
@IBOutlet weak var imageView: UIImageView!
var detailPic: UIImage?
override func viewDidLoad() {
super.viewDidLoad()
self.imageView.image = self.detailPic
}
}
が推測追いつかないでください。エラーは何ですか?あなたの質問を、クラッシュの正確かつ完全な詳細で更新してください。 – rmaddy
@maddy oh yeahあなたの権利は、今すぐ更新します –
@maddyはそれを更新しましたthanks –