Я очень новичок в Swift - у меня возникли проблемы с выполнением простой задачи отображения документа в PDFView.Я не использую раскадровки или IBOutlets и т. Д. Любая идея, почему ниже сбой?
Я пытался ссылаться на внешнюю ссылку, но она выдает мне ту же ошибку.PDF существует в каталоге пакета.
import UIKit import PDFKit
class ViewController: UIViewController {
private var pdfView = PDFView()
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
let myNewView = PDFView(frame: CGRect(x: 10, y: 100, width: 500, height: 500))
// Add border to UIView
myNewView.layer.borderWidth=2
// Change UIView Border Color to Red
myNewView.layer.borderColor = UIColor.red.cgColor
guard let path = Bundle.main.path(forResource: "CV", ofType: "pdf") else { return }
let url = URL(fileURLWithPath: path)
let document = PDFDocument(url: url)
myNewView.document = document
// Add UIView as a Subview
self.view.addSubview(myNewView)
}
}
Сборка завершена успешно.Но я получаю следующее.
2019-06-13 17: 49: 35.702174 + 0100 Appp [81235: 19343962] * Завершение приложения из-за необработанного исключения 'CALayerInvalidGeometry', причина: 'Положение CALayer содержитNaN: [nan nan] '* Стек первого вызова вызова: (0 CoreFoundation 0x00000001083446fb exceptionPreprocess + 331 1 libobjc.A.dylib 0x0000000106250ac5 objc_exception_throw + 48 2 CoreFoundation 0x0000000108344555 + 3: формат: NSEQuartzCore 0x000000010b4072ae _ZN2CA5Layer12set_positionERKNS_4Vec2IdEEb + 140 4 QuartzCore 0x000000010b3f668b - [CALayer SetPosition:] + 57 5 QuartzCore 0x000000010b3f6de3 - [CALayer setFrame:] + 560 6 PDFKit 0x0000000107135097 - [PDFPageLayerTile initWithFrame: forPageLayer: withRenderingTransform: tileContentsScale: generationID:] + 168 7 PDFKit 0x000000010713a805 -[PDFPageLayer _updateTiles] + 3439 8 PDFKit 0x0000000107135d8e - [PDFPageLayer setNeedsTilesUpdate] + 87 9 PDFKit 0x000000010714a97d - [PDFPageView setNeedsTilesUpdate] + 48 10 PDFKit 0x000000010714c816 - [PDFPageView setFrame:] + 334 11 PDFKit 0x000000010714311c - [PDFDocumentView createPageViewForPageAtIndex:] + 764 12 PDFKit 0x0000000107144326 - [PDFDocumentView updateVisibility] + 1 726 13 PDFKit 0x00000001071b376f - [PDFView resizeDisplayView:] + 517 14 PDFKit 0x00000001071accdf - [PDFView layoutDocumentView] +464 15 PDFKit 0x00000001071a836a - [PDFView setDocument: waitDuration:] + 1246 16 Appp 0x000000010596c4d1 $ s7Appp14ViewControllerC11viewDidLoadyyF + +1441 17 Appp 0x000000010596c7b4 $ s7Appp14ViewControllerC11viewDidLoadyyFTo + 36 18 UIKitCore 0x000000010d0ec43b - [UIViewController loadViewIfRequired] + 1183 19 UIKitCore 0x000000010d0ec868 - [UIViewController вид] + 27 20 UIKitCore0x000000010d724c33 - [UIWindow addRootViewControllerViewIfPossible] + 122 21 UIKitCore 0x000000010d725327 - [UIWindow _setHidden: принудительно:] + 289 22 UIKitCore 0x000000010d737ff_DjB_DejB_DeD_WeDB_DejDK_DeDnScene: transitionContext:] + 4555 24 UIKitCore 0x000000010d6ed0c6 - [UIApplication _runWithMainScene: transitionContext: завершение:] + 1617 25 UIKitCore 0x000000010cf326d6 __111 - [__ UICanvasLifecycleMonitor_Compatability _scheduleFirstCommitForScene: переход: firstActivation: завершение:] _ block_invoke + 904 26 UIKitCore 0x000000010cf3afce + [_ UICanvas _enqueuePostSettingUpdateTransactionBlock:]+ 153 27 UIKitCore 0x000000010cf322ec - [__ UICanvasLifecycleMonitor_Compatability _scheduleFirstCommitForScene: переход: первыйАктивация: завершение:] + 23628 UIKitCore 0x000000010cf32c48 - [__ UICanvasLifecycleMonitor_Compatability activateEventsOnly: withContext: завершение:] + 1091 29 UIKitCore 0x000000010cf30fba __82 - [_ UIApplicationCanvas _transitionLifecycleStateWithTransitionContext: завершение:] _ block_invoke + 782 30 UIKitCore 0x000000010cf30c71 - [_ UIApplicationCanvas _transitionLifecycleStateWithTransitionContext: завершение:] + 433 31 UIKitCore 0x000000010cf359b6 __125 - [_ UICanvasLifecycleSettingsDiffActionperformActionsForCanvas: withUpdatedScene: settingsDiff: fromSettings: transitionContext:] _ block_invoke + 576 32 UIKitCore 0x000000010cf36610 _performActionsWithDelayForTransitionContext + 100 33 UIKitCore 0x000000010cf3571d - [_ UICanvasLifecycleSettingsDiffAction performActionsForCanvas: withUpdatedScene: settingsDiff: fromSettings: transitionContext:] + 223 34 UIKitCore 0x000000010cf3a6d0 - [_ UICanvas сцена: didUpdateWithDiff: transitionContext: завершение:] + 392 35 UIKitCore 0x000000010d6eb9a8 - [Рабочая область приложения UIA: didCreateScene: withTransitionContext: завершение:] + 514 36 UIKitCore 0x000000010d2a2dfa - [UIApplicationSceneClientAgent сцена: didInitializeWithEvent: завершение:] + 361 37 FrontBoardServices 0x00000001135df125 - [FBSSceneImpl _didCreateWithTransitionContext: завершение:] + 448 38 FrontBoardServices 0x00000001135e8ed6 __56- [FBSWorkspace клиент: handleCreateScene: withCompletion:] _ block_invoke_2+ 283 39 FrontBoardServices 0x00000001135e8700 __40- [FBSWorkspace _performDelegateCallOut:] _ block_invoke + 53 40 libdispatch.dylib 0x00000001096d7db5 _dispatch_client_callout + 8 41 libdispatch.dylib 0x00000001096db2ba _dispatch_block_invoke_direct + 300 42 FrontBoardServices 0x000000011361a146 __FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK 30 + 43 FrontBoardServices 0x0000000113619dfe - [FBSSerialQueue _performNext] + 45144 FrontBoardServices 0x000000011361a393 - [FBSSerialQueue _performNextFromRunLoopSource] + 42 45 CoreFoundation 0x00000001082abbe1 CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORMUN + 179 * 09CUNC46 CoreFoundation 0x00000001082ab463 __CFRunLoopDoSources0 + 243 47 CoreFoundation 0x00000001082a5b1f __CFRunLoopRun + 48 CoreFoundation тысячи двести тридцать одна 0x00000001082a5302 CFRunLoopRunSpecific + 626 49 GraphicsServices 0x00000001107c62fe GSEventRunModal + 65 50 UIKitCore 0x000000010d6eeba2 UIApplicationMain + 140 51 Appp 0x000000010596f68b основной + 75 52 libdyld.dylib 0x000000010974c541 старта +-53 ???0x0000000000000001 0x0 + 1) libc ++ abi.dylib: завершается с необработанным исключением типа NSException (lldb)