2015-04-02 95 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]; 
     }];