我将在下面粘贴代码,然后告诉您我试图从代码中确定什么。
如果您正在快速阅读,请从下一个代码块上方的文本开始。
- (void)tableViewDidLoadModel:(UITableView*)tableView {
self.items = [NSMutableArray array];
self.sections = [NSMutableArray array];
NSMutableDictionary *groups = [NSMutableDictionary dictionary];
for (int c = 0;c < [_contacts.people count];c++) {
NSDictionary *person = [_contacts.people objectAtIndex:c];
NSString *name = [person objectForKey:@"fullName"];
NSString *letter = [name substringToIndex:1];
NSMutableArray *section = [groups objectForKey:letter];
NSLog(@"%@ - %@ - %@", name, [person objectForKey:@"index"], [person objectForKey:@"abId"]);
if (!section) {
section = [NSMutableArray array];
[groups setObject:section forKey:letter];
}
TTTableItem *item = [ttItem itemWithText:name URL:[person objectForKey:@"index"]];
[section addObject:item];
}
别人写了这段代码。根据我的判断,他们正在尝试获取用户的联系人并填写
TableView
。现在我真正的问题与最后一行有关:
TTTableItem *item = [ttItem itemWithText:name URL:[person objectForKey:@"index"]];
[section addObject:item];
这是使用Three20框架。显然,以前的开发人员所做的是使用
TTTableItem
来获得预格式化的UITableViewCell
。 (希望我在想对吗?)我需要用正常的东西替换这行代码。
我曾经考虑过使用
UITableViewCell
,但是除此之外,我不确定如何开始? 最佳答案
-tableViewDidLoadModel:
是来自TTTableViewDataSource协议的一种方法,因此,如果您试图从项目中删除Three20,则除了替换TTTableItem之外,您还有更多工作要做。
TTTableItem是NSObject的子类,似乎唯一要添加的是userInfo
属性。为了摆脱它,您可以从创建具有相同属性的自己的类开始。
关于objective-c - 有人可以告诉我这是怎么回事吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10378553/