【发布时间】:2011-01-31 07:04:11
【问题描述】:
我有一个表格视图,它的数据源来自一个包含人名的数组。
现在为了方便找人,我想对表格视图进行分区,使其右侧有字母 A-Z,就像地址簿应用一样。
但我当前的数组只包含NSStrings 的集合。如何拆分它们以便按名称的第一个字母分组?有什么方便的方法吗?
编辑:如果有人对我的最终代码感兴趣:
NSMutableArray *arrayChars = [[NSMutableArray alloc] init];
for (char i = 'A'; i <= 'Z' ; i++) {
NSMutableDictionary *characterDict = [[NSMutableDictionary alloc]init];
NSMutableArray *tempArray = [[NSMutableArray alloc] init];
for (int k = 0; k < [myList count]; k++) {
NSString *currentName = [[friends objectAtIndex:k] objectForKey:@"name"];
char heading = [currentName characterAtIndex:0];
heading = toupper(heading);
if (heading == i) {
[tempArray addObject:[friends objectAtIndex:k]];
}
}
[characterDict setObject:tempArray forKey:@"rowValues"];
[characterDict setObject:[NSString stringWithFormat:@"%c",i] forKey:@"headerTitle"];
[arrayChars addObject:characterDict];
[characterDict release];
[tempArray release];
}
在函数结束时,我将拥有:
arrayChars [0] = dictionary(headerTitle = 'A', rowValues = {"adam", "alice", etc})
arrayChars[1] = dictionary(headerTitle = 'B', rowValues = {"Bob", etc})
感谢大家的帮助!
【问题讨论】:
标签: iphone ios uitableview ios4 nsarray