如何在tableViewCell的每个部分中设置不同的子视图

时间:2010-09-02 02:27:14

标签: iphone objective-c uiview uitableview

我希望在每个部分设置不同的子视图,我将不同的视图放入NSMutableArray,所以我希望我可以访问它取决于indexPath.section,这是我的代码:

for (int i =0; i<promoCount; i++) {

    self.textView.text= [NSString stringWithFormat:@"text view :%d",i];
    [self.arrayPromotions addObject:self.textView];
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    static NSString *cellPromotionIdentifier = @"cellPromo";
    cell = [tableView dequeueReusableCellWithIdentifier:cellPromotionIdentifier];
    if (cell==nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellPromotionIdentifier] autorelease];

    }
    [cell.contentView addSubview:[self.arrayPromotions objectAtIndex:indexPath.section]];
    cell.contentView.layer.masksToBounds = YES;
    cell.contentView.layer.cornerRadius = 5.0;


return cell;
}

但它不起作用,子视图只出现在最后一节(但该子视图的内容是正确的) 我确定数组已经被不同的视图填充(通过做NSLog) 任何人都可以帮助我。????

1 个答案:

答案 0 :(得分:1)

  • 你在做什么?为什么要用浮点数除以int并将其存储在y?

看起来你只有一个self.textView。您正在更改其.text成员并将其多次添加到数组中,但它只是一个对象,并且在循环结束时您有多个对该对象的引用,所以您看到的只是它结束的文本用。