Altura dinámica de celdas en UITableView

//Capturamos la celda
        static NSString *identificadorCelda = @"CeldaListado";
        
        celdaListado *cell = [tableView dequeueReusableCellWithIdentifier:identificadorCelda];
        //Creamos una label donde alojamos el texto y calculamos su altura
        UILabel *gettingSizeLabel = [[UILabel alloc] init];
        gettingSizeLabel.font = cell.aviso.font;
        Modelo *modelo = [listado objectAtIndex:indexPath.row];
        gettingSizeLabel.text = modelo.descripcion_aviso;
        gettingSizeLabel.numberOfLines = 0;
        gettingSizeLabel.lineBreakMode = NSLineBreakByWordWrapping;
        CGSize maximumLabelSize = CGSizeMake(cell.modelo.frame.size.width, 9999);
        CGSize expectSize = [gettingSizeLabel sizeThatFits:maximumLabelSize];
        
        //Tomamos la medida total de la celda
        CGRect cellFrame = cell.frame;
        //Sumamos la altura de la label a la celda
        return cellFrame.size.height+expectSize.height - 5;