HI I watch many tutorials to finally create an app for the app store.Recently I got interested by tableViews so I followed many tutorials and I seem to always get an error whereas the people in the tutorial succeed to build their app . When I try to run my app , the building stops and I get an exception in the AppDelegate class on the line where it says "class AppDelegate ..." the exception is "Thread 1 : signal SIGABRT"
and for those interested here is the message in the console .
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'must pass a class of kind UITableViewHeaderFooterView'
*** First throw call stack:
(
0 CoreFoundation 0x0000000109c80f35 __exceptionPreprocess + 165
1 libobjc.A.dylib 0x000000010b7c4bb7 objc_exception_throw + 45
2 CoreFoundation 0x0000000109c80e6d +[NSException raise:format:] + 205
3 UIKit 0x000000010a5fb254 -[UITableView registerClass:forHeaderFooterViewReuseIdentifier:] + 247
4 tableviewtes 0x0000000109a9cc3c _TFC12tableviewtes14ViewController11viewDidLoadfS0_FT_T_ + 460
5 tableviewtes 0x0000000109a9ccd2 _TToFC12tableviewtes14ViewController11viewDidLoadfS0_FT_T_ + 34
6 UIKit 0x000000010a631a90 -[UIViewController loadViewIfRequired] + 738
7 UIKit 0x000000010a631c8e -[UIViewController view] + 27
8 UIKit 0x000000010a550ca9 -[UIWindow addRootViewControllerViewIfPossible] + 58
9 UIKit 0x000000010a551041 -[UIWindow _setHidden:forced:] + 247
10 UIKit 0x000000010a55d72c -[UIWindow makeKeyAndVisible] + 42
11 UIKit 0x000000010a508061 -[UIApplication _callInitializationDelegatesForMainScene:transitionContext:] + 2628
12 UIKit 0x000000010a50ad2c -[UIApplication _runWithMainScene:transitionContext:completion:] + 1350
13 UIKit 0x000000010a509bf2 -[UIApplication workspaceDidEndTransaction:] + 179
14 FrontBoardServices 0x000000010d3512a3 __31-[FBSSerialQueue performAsync:]_block_invoke + 16
15 CoreFoundation 0x0000000109bb653c __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 12
16 CoreFoundation 0x0000000109bac285 __CFRunLoopDoBlocks + 341
17 CoreFoundation 0x0000000109bac045 __CFRunLoopRun + 2389
18 CoreFoundation 0x0000000109bab486 CFRunLoopRunSpecific + 470
19 UIKit 0x000000010a509669 -[UIApplication _run] + 413
20 UIKit 0x000000010a50c420 UIApplicationMain + 1282
21 tableviewtes 0x0000000109a9faee top_level_code + 78
22 tableviewtes 0x0000000109a9fb2a main + 42
23 libdyld.dylib 0x000000010bf9e145 start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException
(lldb)
In this blog post, I'll introduce the collection view Table in SwiftUI and explain how to leverage this view on iOS 16 to build a multiplatform app. SwiftUI provides several collection views that you can use to assemble other views into dynamic groupings with complex, built-in behaviors.
You can't change the tableview style dinamically, you have to do it in your xib file or storyboard if you have one. If you don't use a storyboard or a xib, and prefer to create the tableview programmatically, specify the style while creating the tableview using the - initWithFrame:style: method.
A view that presents data using rows in a single column.
I think its a tiny mistake.
Instead of :
tableView.register(UITableView.self, forCellReuseIdentifier: "cell")
You need to use:
tableView.register(UITableViewCell.self, forCellReuseIdentifier: "cell")
Please note that the first argument in register function should be UITableViewCell
NOT UITableView
Happy Coding :)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With