【发布时间】:2014-02-10 16:45:49
【问题描述】:
我正在使用 sortedArrayUsingSelector 对我拥有的数组进行排序。
这是我的称呼:
NSArray *sortedArray;
SEL sel = @selector(intSortWithNum1:withNum2:withContext:);
sortedArray = [_myObjs sortedArrayUsingSelector:sel];
这是定义:
- (NSInteger) intSortWithNum1:(id)num1 withNum2:(id)num2 withContext:(void *)context {
CLLocationCoordinate2D c1 = CLLocationCoordinate2DMake([((myObj *)num1) getLat], [((myObj *)num1) getLong]);
CLLocationCoordinate2D c2 = CLLocationCoordinate2DMake([((myObj *)num2) getLat], [((myObj *)num2) getLong]);
NSUInteger v1 = [self distanceFromCurrentLocation:(c1)];
NSUInteger v2 = [self distanceFromCurrentLocation:(c2)];
if (v1 < v2)
return NSOrderedAscending;
else if (v1 > v2)
return NSOrderedDescending;
else
return NSOrderedSame;
}
当我运行我的应用程序时,我的主程序中出现 thread1 SIGABRT 错误。
有什么想法吗?提前致谢。
注意:我已经尝试过了:
NSArray *sortedArray = [[NSArray alloc] init];
它没有解决任何问题。
【问题讨论】:
-
你能添加堆栈跟踪吗? thread1 SIGABRT 没说太多..(至少对我来说)
-
如何在 XCode 中获取堆栈跟踪?
-
应用崩溃后的控制台输出
标签: ios objective-c xcode ios7 nsarray