在uitableview中按字母顺序排序动态数据

时间:2012-10-15 08:10:52

标签: iphone ios uitableview

我正在处理来自here的json数据,并且必须在UITableView中显示数据。

我必须按字母顺序显示部分的内容。每个部分包含多行,每行包含两个标签。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    int section = [indexPath section];

    int row = [indexPath row];

    UITableViewCell *cell =[[UITableViewCell alloc]init];


     UILabel *label1=[[UILabel alloc]initWithFrame:CGRectMake(10, 8, 30, 25)];
     label1.font=[UIFont boldSystemFontOfSize:20];
     label1.backgroundColor=[UIColor lightGrayColor];
     label1.TextAlignment=UITextAlignmentCenter;
     label1.textColor=[UIColor whiteColor];
     label1.text=[[[[[jsonObject valueForKey:@"leagues"]objectAtIndex:section]valueForKey:@"leagues"]objectAtIndex:row]valueForKey:@"id"];

    UILabel *label2=[[UILabel alloc]initWithFrame:CGRectMake(45, 8, 250, 25)];
    label2.font=[UIFont systemFontOfSize:18];
    label2.backgroundColor=[UIColor clearColor];
    label2.text=[[[[[jsonObject valueForKey:@"leagues"]objectAtIndex:section]valueForKey:@"leagues"]objectAtIndex:row]valueForKey:@"league"];


    cell.accessoryType=UITableViewCellAccessoryDetailDisclosureButton;

    cell.selectionStyle=UITableViewCellSelectionStyleNone;

    [cell.contentView addSubview:label1];
    [cell.contentView addSubview:label2];
    return cell;
}

提前致谢和问候.....

1 个答案:

答案 0 :(得分:1)

如果将JSON编码对象保存到NSMutableArray等对象中。然后你只需要实现一些方法...说

- (void)sortMyData {}

实现了一些已知算法,例如MergeSortQuickSortBubbleSort。然后,在设置表格之前,您可以调用此方法对数据进行排序,这样您就可以了。

注:

在服务器端“弯曲”代码是非常常见的 - >在发送之前对其进行排序。