ho creato una consuetudine AVFoundation fotocamera e caricato in un'altra vista come visualizzazione secondaria con @IBDesignable, dopo che l'immagine è presa vorrei assegnarlo a UIImageView
, Ma quando si preme il pulsante, la vista personalizzata della telecamera (UIView
) si arresta e si sposta in alto sullo schermo, invece di assegnarlo allo UIImageView
, Ciò accade quando la vista personalizzata della telecamera viene caricata all'inizio, quindi quando carico la telecamera personalizzata di nuovo, assegnerà l'immagine allo UIImageView
.visualizzazione secondaria in Vista principale incidente Quando si assegna un'immagine dal AVFoundation a UIImageView
Capture metodo Image:
@IBAction func captureImage(sender: AnyObject) {
if let stillOutput = self.captureImageOutput {
// we do this on another thread so that we don't hang the UI
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {
//find the video connection
var videoConnection : AVCaptureConnection?
for connecton in stillOutput.connections {
//find a matching input port
for port in connecton.inputPorts!{
if port.mediaType == AVMediaTypeVideo {
videoConnection = connecton as? AVCaptureConnection
break //for port
}
}
if videoConnection != nil {
break// for connections
}
}
if videoConnection != nil {
stillOutput.captureStillImageAsynchronouslyFromConnection(videoConnection){
(imageSampleBuffer : CMSampleBuffer!, _) in
let imageData = AVCaptureStillImageOutput.jpegStillImageNSDataRepresentation(imageSampleBuffer)
let pickedImage: UIImage = UIImage(data: imageData, scale: 1.0)!
dispatch_async(dispatch_get_main_queue(), {
self.capturePhoto.image = pickedImage
})
}
}
}
}
}
Ho anche provato il carico dispatch_sync
e nulla nel UIImageView, ma lo schermo non crash.
dispatch_sync(dispatch_get_main_queue(), {
self.capturePhoto.image = pickedImage
})
che tipo di incidente stai ottenendo? c'è un backtrace che mostra quale linea del tuo codice sorgente sta causando l'arresto anomalo? –
Non ho alcun errore. @MichaelDautermann – Xrait
L'interfaccia utente si blocca semplicemente – Xrait