Различные высоты UITableViewCell

Я построил три разные ячейки в своей раскадровке и подключил все выходы, каждая ячейка имеет уникальный идентификатор.

Например, у меня есть одна ячейка с изображением, другая с меткой и еще одна с другим содержимым, поэтому все они уникальны, и каждый тип ячейки требует своей высоты (, динамической или статусной, это не имеет значения ).

Однако как я могу заставить ячейку с «indentifier1» возвращать определенную высоту, а затем другие ячейки возвращают другую высоту?

Я знаю, что могу использовать - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath, но не знаю, как различать клетки.

Я использую основные данные и извлекаю из них результаты для табличного представления.

Изменить

Я пробовал это с тегами, но он вылетает при первом выражении if:

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    CGFloat cellHeight;

    if ([[tableView cellForRowAtIndexPath:indexPath] tag] == 1) cellHeight = 170;
    else if ([[tableView cellForRowAtIndexPath:indexPath] tag] == 2) cellHeight = 100;
    else if ([[tableView cellForRowAtIndexPath:indexPath] tag] == 3) cellHeight = 140;

    return cellHeight;
}
13
задан halfer 31 August 2018 в 13:57
поделиться