Я включил заполнитель [NSNull null] в свой массив источника данных combobox, чтобы я мог позволить пользователю выбрать «none» без фактического сохранения пустого объекта.Проблема в том, что, когда реальный объект добавляется в массив источника данных, мне нужно отсортировать массив:
[self.mutableArrayOfStrings sortUsingSelector:@selector(caseInsensitiveCompare:)];
Эта строка производит SIGKILL.
У меня та же проблемас сопутствующим массивом NSManagedObject, который также имеет заполнитель NSNull:
NSSortDescriptor *sortDescriptorName = [[NSSortDescriptor alloc] initWithKey:@“name” ascending:YES selector:@selector(caseInsensitiveCompare:)];
NSArray *sortDescriptorsNames = [[NSArray alloc] initWithObjects: sortDescriptorName, nil];
[self.mutableArrayOfMOs sortUsingDescriptors:sortDescriptorsNames];
Если mutableArrayOfMOs содержит объект NSNull, эта строка также создает SIGKILL.
Конечно, я мог бы скопироватьненулевые объекты в отдельный массив, сортируйте его, повторно вставьте нулевой объект и назначьте его свойству массива - но это загромождает мой код.Разве не должно быть способов сортировки, которые не давят NSNull?В конце концов, Apple явно предоставила NSNull, чтобы мы могли включать его в массивы.