我的程序有2个NSMutableArray,每个都包含一个项目列表。有些成本超过50美元,有些成本低于50美元。任务是将此信息显示为表的一部分。所以..
我的表有2个部分
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 2;
}
每个部分都有一个名称
- (NSString *)tableView:(UITableView *)
tableView titleForHeaderInSection:(NSInteger)section {
NSString *lSectionTitle;
switch (section) {
case 0:
lSectionTitle = @"Under $50";
break;
case 1:
...
每个部分都有一个计数
-(NSInteger) tableView:(UITableView *)tableView
numberOfRowsInSection:(NSInteger)section {
NSInteger count= 0;
switch (section) {
case 0:
count = [[[PossessionStore defaultStore] under50Possessions] count];
break;
case 1:
.....
最后我们弄清楚要显示的内容作为给定单元格的一部分
- (UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"UITableViewCell"];
if (!cell) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"UITableViewCell"]autorelease];
}
Possession *p = [[[PossessionStore defaultStore] allPossessions] objectAtIndex:[indexPath row]];
[[cell textLabel] setText:[p description]];
return cell;
}
上面的代码引用allPossessions
,其中包含超过50美元且低于50美元的商品。我被困在这一点上。
在这个例子中,有没有办法让我知道是否要求我为低于或超过50美元的类别绘制一个单元格?
答案 0 :(得分:1)
一切都很好,但我真的不明白UITtable如何“知道” 将低于50美元的商品放入正确的类别。
没有。看起来你可能只是幸运,因为PosessionStore从-allPossessions
返回数据的方式是按价格或其他东西组织的财产。在填充每个单元格时,您的-tableView:cellForRowAtIndexPath:
方法应该考虑该部分以及行。