2015-04-02 94 views
0

如何按字母順序排列數組以返回所有對象數據而不是單個名稱?以及如何在tableview部分設置這些數據?部分方法中的行數 - 它是如何工作的,請幫助我。按字母順序對部分表格視圖進行排序數組

+0

數組包含什麼? – 2015-04-02 10:31:54

+0

數組包含地址簿中的聯繫人姓名,電子郵件和電話號碼列表。 o想排序字母對象明智不只是單一名稱我的意思是我想排序數組中有名稱,電話和電子郵件,然後這個數組我將通過部分表 – Janisar 2015-04-02 11:11:07

+0

所以你的數組包含聯繫人對象,對不對?只能粘貼聯繫人對象的類定義? – 2015-04-02 11:16:22

回答

0

您可以使用排序描述符對數組排序。在排序描述符中設置哪些應當用於排序的數組元素的ATTRIB:

NSSortDescriptor *sort = [NSSortDescriptor sortDescriptorWithKey:@"yourAttribInArrayElememts" ascending:YES]; 
NSArray *sortedArray = [yourArray sortedArrayUsingDescriptors:[NSArray arrayWithObject:sort]]; 
+0

親愛的Throb65我有一系列的聯繫我想在這個響應formate letter = A {list;(name = @「Anisar」; Phone = @「03484863」; email = @「janisr.com」)}; simailarly letter = B {list; list;(name = @「Bnisar」; Phone = @「03484863」; email = @「banisr.com」)};} etc plz help me – Janisar 2015-04-02 11:16:08

0

你的對象類中創建這種方法

-(NSComparisonResult) compareWithObjectClass: (YourObjectClass *) otherObject 
{ 
    return [self.name compare:otherObject.name] 
} 

然後,在你的ViewController,你可以調用sortUsingComparator方法來訂購你的數組對象

//Order items Array 
[self.itemsArray sortUsingComparator:^NSComparisonResult(YourObjectClass *obj1, YourObjectClass *obj2){ 
      return [obj1compareWithObjectClass:obj2]; 
     }];