【问题标题】:How can I arrange sorted data in UITableViewController如何在 UITableViewController 中排列排序数据
【发布时间】:2011-01-19 14:28:35
【问题描述】:

我在我的应用程序中使用了 iphone 通讯簿数据,我对这些数据进行了排序并排列在 UITableViewController 中,但现在我想做出与通讯簿相同的外观,即按 GroupedStyle 排序,将初始字符作为部分的标题。建议 plz

【问题讨论】:

标签: iphone uitableview


【解决方案1】:

你必须实现的 tableView 方法是

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section

对于节标题,为此您还必须实现

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section

通过这样做,您的表格数据可以以分组方式查看。

【讨论】:

    【解决方案2】:

    使用类似以下的方式对联系人进行排序:

        NSArray* tempArray = [jsonData objectForKey:@"contacts"];
        NSSortDescriptor *sortDescriptor;
        sortDescriptor = [[[NSSortDescriptor alloc] initWithKey:@"first_name"
                                                     ascending:YES] autorelease];
        NSArray *sortDescriptors = [NSArray arrayWithObject:sortDescriptor];
        contactsArray = [[NSArray alloc] initWithArray:[tempArray  sortedArrayUsingDescriptors:sortDescriptors]];
    

    从使用 NSPredicate 中挑选联系人并将它们添加到您想要的部分。

    【讨论】:

    • 我已经对数组进行了排序,但现在我想将表格作为分组样式放入表中,第一个字符作为节标题
    • 首先有一个 Array 存储从 A 到 Z 的字符串。创建 26 个部分。然后使用委托方法“- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section”并在该方法中设置字符串。创建使用过滤器对名字进行排序的数组数组。 (我现在有点忙,可能无法提供代码)对nspredicate进行一些研究以创建不同的数组......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-07
    • 2023-02-23
    • 1970-01-01
    • 2018-10-03
    • 2019-10-10
    • 2020-01-30
    • 2017-04-03
    相关资源
    最近更新 更多