I simply don't understand this. All I find is a number of forum posts that say "I don't know how to fix this". I started out a simple view. I then added ASIHTTPRequest to communicate with a database using a request call to a php script. I had to add Reachability.h before it would compile. When I actually tried to run it, all I got was a blank screen on the simulator, and the SIGABRT error in XCode in the main.
Here is the output:
GNU gdb 6.3.50-20050815 (Apple version gdb-1518) (Sat Feb 12 02:52:12 UTC 2011)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "x86_64-apple-darwin".sharedlibrary apply-load-rules all
Attaching to process 4930.
2011-08-22 21:47:15.996 ViewInfo[4930:207] -[ViewInfoViewController tableView:numberOfRowsInSection:]: unrecognized selector sent to instance 0x4c23b80
2011-08-22 21:47:15.999 ViewInfo[4930:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[ViewInfoViewController tableView:numberOfRowsInSection:]: unrecognized selector sent to instance 0x4c23b80'
*** Call stack at first throw:
(
0 CoreFoundation 0x010d05a9 __exceptionPreprocess + 185
1 libobjc.A.dylib 0x01224313 objc_exception_throw + 44
2 CoreFoundation 0x010d20bb -[NSObject(NSObject) doesNotRecognizeSelector:] + 187
3 CoreFoundation 0x01041966 ___forwarding___ + 966
4 CoreFoundation 0x01041522 _CF_forwarding_prep_0 + 50
5 UIKit 0x007792b7 -[UISectionRowData refreshWithSection:tableView:tableViewRowData:] + 1834
6 UIKit 0x00776d88 -[UITableViewRowData numberOfRows] + 108
7 UIKit 0x0062a677 -[UITableView noteNumberOfRowsChanged] + 132
8 UIKit 0x00637708 -[UITableView reloadData] + 773
9 UIKit 0x00634844 -[UITableView layoutSubviews] + 42
10 QuartzCore 0x01ed6a5a -[CALayer layoutSublayers] + 181
11 QuartzCore 0x01ed8ddc CALayerLayoutIfNeeded + 220
12 QuartzCore 0x01e7e0b4 _ZN2CA7Context18commit_transactionEPNS_11TransactionE + 310
13 QuartzCore 0x01e7f294 _ZN2CA11Transaction6commitEv + 292
14 UIKit 0x005be9c9 -[UIApplication _reportAppLaunchFinished] + 39
15 UIKit 0x005bee83 -[UIApplication _runWithURL:payload:launchOrientation:statusBarStyle:statusBarHidden:] + 690
16 UIKit 0x005c9617 -[开发者_StackOverflow中文版UIApplication handleEvent:withNewEvent:] + 1533
17 UIKit 0x005c1abf -[UIApplication sendEvent:] + 71
18 UIKit 0x005c6f2e _UIApplicationHandleEvent + 7576
19 GraphicsServices 0x0188e992 PurpleEventCallback + 1550
20 CoreFoundation 0x010b1944 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 52
21 CoreFoundation 0x01011cf7 __CFRunLoopDoSource1 + 215
22 CoreFoundation 0x0100ef83 __CFRunLoopRun + 979
23 CoreFoundation 0x0100e840 CFRunLoopRunSpecific + 208
24 CoreFoundation 0x0100e761 CFRunLoopRunInMode + 97
25 UIKit 0x005be7d2 -[UIApplication _run] + 623
26 UIKit 0x005cac93 UIApplicationMain + 1160
27 ViewInfo 0x000020d9 main + 121
28 ViewInfo 0x00002055 start + 53
)
terminate called after throwing an instance of 'NSException'
Current language: auto; currently objective-c
(gdb)
Are you sure you copied the right output? The pasted output shows that you added an object as the delegate of a UITableViewController, but without implementing the obligatory methods in:
-[ViewInfoViewController tableView:numberOfRowsInSection:]:
Aside from that, and the lack of code to help you out, the only thing I can think of is that you didn't add the required Frameworks for ASIHTTP, or you installed the wrong reachability (ASI comes with it's own reachability, inside another folder, it is different from Apple's Reachability, btw).
ViewInfoViewController
is almost certainly not a UITableViewController
(and doesn't conform to <UITableViewDataSource>
). I suspect it's a UIViewController
. In any case, as Nyan points out, ViewInfoViewController
does not implement tableView:numberOfRowsInSection:
as it is required to do, or you have wired your tableview's datasource
to the wrong object and didn't mean to wire it ViewInfoViewController
.
精彩评论