Вторая ячейка появляется только после выбора первой ячейки в iS Tableview - PullRequest
0 голосов
/ 09 июля 2011

Когда я запускаю свое приложение ios, в TableView отображается только первая ячейка, затем при нажатии отображается вторая ячейка. Я хотел бы, чтобы они оба отображались одновременно, но я не могу понять это поведение.

Вот код, на мой взгляд, загрузил

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

    static NSString *CellIdentifier = @"ProductCellId";

    ProductTableCell *cell = 
        (ProductTableCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        [[NSBundle mainBundle] loadNibNamed:@"ProductTableCell" owner:self options:nil];
        cell = self.productCell;
    }    

    Product *product = [products objectAtIndex:indexPath.row];
    [cell configureForProduct:product];

    return cell;
}

Любая помощь будет высоко ценится!

1 Ответ

0 голосов
/ 09 июля 2011

Поскольку вы загружаете свою ячейку из Интерфейсного разработчика, попробуйте это:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:   (NSIndexPath *)indexPath {
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"ProductTableCell"];
        if (cell == nil) {
        // Load the top-level objects from the custom cell XIB.
        NSArray *topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"ProductTableCell" owner:self options:nil];
        // Grab a pointer to the first object (presumably the custom cell, as that's all the XIB should contain).
        cell = [topLevelObjects objectAtIndex:0];
    }


Product *product = [products objectAtIndex:indexPath.row];
[cell configureForProduct:product];


    return cell;
}

Измените это:

static NSString *CellIdentifier = @"ProductCellId";

на:

static NSString *CellIdentifier = @"ProductTableCell";

Вы можете найтидополнительная информация о том, что вы пытаетесь сделать в этом вопросе: Загрузка ячеек из файлов XIB

...