2011-11-29 62 views
2

我有一個名爲nsmarrMedicineInfo的nsmutablearray。我想通過使用NSSortDescriptor來排序元素。當我執行下面的代碼時,它顯示NSUnknownKeyException。我無法找到數組的關鍵。在iPhone中實現NSSortDescriptor?

NSSortDescriptor *sortDescriptor = [[[NSSortDescriptor alloc] initWithKey:@"sort" ascending:YES selector:@selector(localizedCaseInsensitiveCompare:)] autorelease]; 
NSArray *sort = [NSArray arrayWithObject:sortDescriptor]; 
NSArray *sortedArray = [nsmarrMedicineInfo sortedArrayUsingDescriptors:sort]; 

回答

1

這裏的關鍵將是屬性(鍵值對)中的一個自定義對象數組nsmarrMedicineInfo上,您希望您的排序數組。 正如蘋果的doc:

NSSortDescriptor的實例描述了一個基礎,通過指定的財產,以用來比較的對象排序對象 ,方法 用來比較性能,以及是否比較應該是 升序或降序。

但如果nsmarrMedicinInfo對象由字符串只有這樣,你可以使用sortedArrayUsingSelector方法,而不是sortDescriptor

謝謝,