0

我相信你们中的大多数人都处理过类似的问题。好吧,事实证明我正在尝试使用 parse 运行这个简单的程序,但我遇到了一个与程序程序集有关的有趣问题,它是线程组合。

程序没有发现编译错误

<!-- language: «lang-c» -->

«#import "PCommonsAppDelegate.h"

@implementation PCommonsDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:        (NSDictionary *)launchOptions
{
// Override point for customization after application launch.

[Parse setApplicationId:@"100000000pUgmUXDRT64dF6mTT8mY"
              clientKey:@"aLT1itwGri41wZ5Nva8WBb6hWGVBGkjk5aWvmDTm"];

return YES;

} »

主要看起来是这样的。

<!-- language: «lang-c» -->

«//  main.m
 //PCommons using PARSE
 //  
 //

#import <UIKit/UIKit.h>

#import "PCommonsAppDelegate.h"

int main(int argc, char *argv[])
{
@autoreleasepool {
    return UIApplicationMain(argc, argv, nil, NSStringFromClass([PCommonsAppDelegate     class]));
    }
}

»

日志输出如下所示:

<!-- language: «lang-bsh» -->

«2013-07-30 13:52:48.930 ParseTask[691:c07]
 *** Assertion failure in -[UITableView_configureCellForDisplay:forIndexPath:], 
 /SourceCache/UIKit_Sim/UIKit-2380.17/UITableView.m:5471

 2013-07-30 13:52:48.931 ParseExample[691:c07] *** Terminating app due to uncaught   exception 
'NSInternalInconsistencyException', reason: 'UITableView dataSource 
must return a cell from tableView:cellForRowAtIndexPath:'
*** First throw call stack:
(0x213d012 0x1f62e7e 0x213ce78 0x1c21665 
0x1185c1b 0x111a40c 0x1185a7b 0x118a919 
0x118a9cf  0x11731bb 0x1183b4b 0x11202dd 
0x1f766b0 0x565fc0 0x55a33c 0x55a150 
0x4d80bc 0x4d9227 0x4d98e2 0x2105afe  
0x2105a3d 0x20e37c2 0x20e2f44 0x20e2e1b 
0x2b6a7e3 0x2b6a668 0x10cfffc 0x2b3d 0x2a65)

libc++abi.dylib: terminate called throwing an exception»

而且,在查看 Thread 结构时,我注意到有一个 THREAD 1: signal SIGBRT 'breakpoint' 影响堆栈。例如:

我被告知

0x93e0ea72: movl 26027(%edx), %edx

在 UIApplicationMain 上。

线程 1(主线程) :: 0__pthread_kill

«libsystem_kernel.dylib`__pthread_kill:
0x93e0ea60:  movl   $524616, %eax
0x93e0ea65:  calll  0x93e104c2 ; _sysenter_trap
0x93e0ea6a:  jae    0x93e0ea7a ; __pthread_kill + 26
0x93e0ea6c:  calll  0x93e0ea71 ; __pthread_kill + 17
0x93e0ea71:  popl   %edx
0x93e0ea72:  movl   26027(%edx), %edx
0x93e0ea78:  jmpl   *%edx
0x93e0ea7a:  ret    
0x93e0ea7b:  nop    

»

在线程 2、线程 3、线程 4 上也提出了断点...直到线程 13,这让我想知道这是否是套接字的问题。

我如何有效地编译它?

4

1 回答 1

0

你需要为你的 UITableView 提供一个合适的数据源。在某个地方你有一个 UITableView 并且你已经将它指向了一个数据源。该类必须实现tableView:cellForRowAtIndexPath:并返回正确的 UITableViewCell。

请参阅https://www.parse.com/docs/ios/api/Classes/PFQueryTableViewController.html#//api/name/tableView:cellForRowAtIndexPath:object

于 2013-07-30T22:14:52.147 回答