Je vous ai dit que ce serait pratique si vous pouviez voir la vue du débogueur pendant les tests.
Implémentez debugQuickLookObject
.
Cela ne fonctionne que si vous ajoutez @ objc
depuis Swift 4.0.
iOS
extension UIView {
@objc func debugQuickLookObject() -> Any? {
UIGraphicsBeginImageContextWithOptions(view.bounds.size, false, UIScreen.main.scale)
drawViewHierarchyInRect(view.bounds, afterScreenUpdates: true)
let image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return image
}
}
mac
extension NSView {
@objc func debugQuickLookObject() -> Any? {
guard let rep = self.bitmapImageRepForCachingDisplay(in: bounds) else { return nil }
self.cacheDisplay(in: self.bounds, to: rep)
guard let cgImage = rep.cgImage else { return nil }
return NSImage(cgImage: cgImage, size: bounds.size)
}
}
Maintenant, lorsque vous mettez un point d'arrêt dans le débogueur LLDB, arrêtez-le et appuyez sur la marque d'œil
Vous pouvez prévisualiser le contenu de View.