Q:

UITableView GridLayout Problems with Reusable UITableViewCells

I am creating a Grid (spreadsheet) like layout for iPad app using UITableView.  I got the grid part working but since I am dynamically adding UILabels to the cells the reusable portion is not working fine.  Here is the code: 
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"FundCell"];

    Fund *fund = [funds objectAtIndex:[indexPath row]];

    float labelWidth = 1024 / ([columnNames count] -1 );

    for(NSString *columnName in columnNames)
    {
        UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(x, 0, labelWidth, 44)];

        label.backgroundColor = [UIColor clearColor];

        label.text = [fund valueForKey:columnName];

        x += label.bounds.size.width;

        [cell addSubview:label];
    }

    x = 0;

    return cell;
}

Result:

A:

You're adding new labels in every reuse.  You should only add the labels once, store references to them (usually as properties of a custom cell subclass) and just set the text value thereafter.  
You may find it easier to define a custom cell in a xib and position your labels there, creating outlets.  You can register this for reuse with the table, it will create or dequeue a cell as needed. 