Ios Swift UINib错误
您好,我是IOS Swift开发的初学者,我只想知道是什么导致了这些错误 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因是:“似乎没有有效的已编译情节提要Ios Swift UINib错误,ios,swift,xcode,Ios,Swift,Xcode,您好,我是IOS Swift开发的初学者,我只想知道是什么导致了这些错误 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因是:“似乎没有有效的已编译情节提要 'Could not load NIB in bundle: 'NSBundle </Users/dobermaxx/Library/Developer/CoreSimulator/Devices/B6F13A8A-3BDA-4868-97CD-79B62039F7A0/data/C
'Could not load NIB in bundle: 'NSBundle </Users/dobermaxx/Library/Developer/CoreSimulator/Devices/B6F13A8A-3BDA-4868-97CD-79B62039F7A0/data/Containers/Bundle/Application/F4F3FC83-6133-4184-BD93-CDE0CA3AA688/AppName.app> (loaded)' with name 'aI6-Xc-0KW-view-rPV-ev-7sf' and directory 'Main.storyboardc''
*** First throw call stack:
(
0 CoreFoundation 0x0000000106389d4b __exceptionPreprocess + 171
1 libobjc.A.dylib 0x0000000104a8221e objc_exception_throw + 48
2 CoreFoundation 0x00000001063f32b5 +[NSException raise:format:] + 197
3 UIKit 0x0000000108360bd2 -[UINib instantiateWithOwner:options:] + 507
4 UIKit 0x00000001080f49c5 -[UIViewController _loadViewFromNibNamed:bundle:] + 386
5 UIKit 0x00000001080f52e7 -[UIViewController loadView] + 177
6 UIKit 0x00000001080f561c -[UIViewController loadViewIfRequired] + 201
7 UIKit 0x00000001080fc062 -[UIViewController __viewWillAppear:] + 118
8 UIKit 0x00000001081271d3 -[UINavigationController _startCustomTransition:] + 1290
9 UIKit 0x0000000108137e48 -[UINavigationController _startDeferredTransitionIfNeeded:] + 697
10 UIKit 0x0000000108138fdb -[UINavigationController __viewWillLayoutSubviews] + 58
11 UIKit 0x000000010832fdd7 -[UILayoutContainerView layoutSubviews] + 223
12 UIKit 0x0000000108018ab8 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 1237
13 QuartzCore 0x0000000107d3abf8 -[CALayer layoutSublayers] + 146
14 QuartzCore 0x0000000107d2e440 _ZN2CA5Layer16layout_if_neededEPNS_11TransactionE + 366
15 QuartzCore 0x0000000107d2e2be _ZN2CA5Layer28layout_and_display_if_neededEPNS_11TransactionE + 24
16 QuartzCore 0x0000000107cbc318 _ZN2CA7Context18commit_transactionEPNS_11TransactionE + 280
17 QuartzCore 0x0000000107ce93ff _ZN2CA11Transaction6commitEv + 475
18 QuartzCore 0x0000000107ce9d6f _ZN2CA11Transaction17observer_callbackEP19__CFRunLoopObservermPv + 113
19 CoreFoundation 0x000000010632e267 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23
20 CoreFoundation 0x000000010632e1d7 __CFRunLoopDoObservers + 391
21 CoreFoundation 0x0000000106312f8e __CFRunLoopRun + 1198
22 CoreFoundation 0x0000000106312884 CFRunLoopRunSpecific + 420
23 GraphicsServices 0x000000010c3e4a6f GSEventRunModal + 161
24 UIKit 0x0000000107f53c68 UIApplicationMain + 159
25 AppName 0x0000000103c4b0ff main + 111
26 libdyld.dylib 0x000000010a1a568d start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException
我检查了viewcontroller标识符,它完全是“vEntry”,现在我知道这会触发错误,因为它是collectionview单元格的一部分,在我第三次选择/点击并使用collection view单元格返回视图后会触发它。您在情节提要中添加导航控制器了吗 如果未在情节提要中添加导航控制器,请执行此步骤
entryViewController
您是否已检查此代码的异常断点?如果不是,请添加一个异常断点,并检查此代码是否导致崩溃 当您的XIB未正确连接到
UIViewController
时,通常会发生这种类型的崩溃
另外,在
EntryViewController
中的viewDidLoad
事件上添加一个断点,检查EntryViewController
是否被正确推到Navigationbar
上,并请告诉我。这里是CalendarViewController有集合视图的情况。如果我点击,EntryViewController现在有一个表单一个集合视图单元格,它进入EntryViewController,所以我填写表单,然后点击按钮,它返回日历。。。此崩溃发生在我第三次点击collectionview单元后。由于未捕获的异常“NSInvalidArgumentException”,我收到此终止应用程序,原因是:“EntryViewController中的按钮点击似乎没有有效的已编译故事板。您说您导航回CalendarViewController。”。对吗?请给我看后面导航的代码。可能会出现问题。func backtocalendar(){//get month and pass let splitpass=passDate.characters.split{$0==“/”}.map(String.init)let calendarVC:CalendarViewController=self.storyboard?.instanceeviewController(带标识符:“vcCalendar”)作为!CalendarViewController calendarVC.month=Int(splitpass[1])!calendarVC.year=Int(splitpass[0])!self.navigationController!.pushViewController(calendarVC,动画:true)}请不要在EntryViewController和CalendarViewController之间使用pushViewController。从EntryViewController导航回CalendarViewController时,请使用self.navigationController?.popViewController(动画:true)。
let entryviewcontroller = self.storyboard?.instantiateViewController(withIdentifier: "vcEntry") as! EntryViewController
entryviewcontroller.passDate = cell.sqldate
self.navigationController?.pushViewController(entryviewcontroller, animated: true)