Первая ячейка неправильного размера

Мне нужно, чтобы первая ячейка в моем tableView отличалась от остальных. Все остальные мои ячейки находятся под классом CustomPFTableViewCell, но первая - это другая ячейка, поэтому она принадлежит классу FirstPFTableViewCell, оба из которых выходят из класса PFTableViewCell. Прямо сейчас я просто использовал if в зависимости от indexPath.row для того, была ли ячейка первой или нет. Когда его нет, он загрузит данные для ячейки из Parse.

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath, object: PFObject?) -> PFTableViewCell {
    if(indexPath.row >= 1){
    let cell = tableView.dequeueReusableCellWithIdentifier("Cell") as! CustomPFTableViewCell!

    print("Loading Parse Database Files...")
    // Extract values from the PFObject to display in the table cell
    if let name = object?["Name"] as? String {
        cell?.nameTextLabel?.text = name
        print("Loading " + name)
    }
    if let author = object?["authorName"] as? String {
        cell?.authorTextLabel?.text = author
    }
    if let likes = object?["Likes"] as? Int {
        let stringVal = String(likes)
        cell?.numLikes.text = stringVal
    }
    if let descrip = object?["Description"] as? String {
        cell?.descriptionHolder = descrip
    }
    let initialThumbnail = UIImage(named: "Unloaded")
    cell.customFlag.image = initialThumbnail
    if let thumbnail = object?["imageCover"] as? PFFile {
        cell.customFlag.file = thumbnail
        cell.customFlag.loadInBackground()
    }
        return cell
    }

    print("Finished loading!")



    let cell = tableView.dequeueReusableCellWithIdentifier("firstCell") as! PFTableViewCell
    return cell


}

Конец пуст, потому что я не уверен, как изменить размер одной / первой ячейки. (В Интерфейсном Разработчике это установлено на 60). Я думаю, самая важная часть в решении этого заключается в следующем:

    let cell = tableView.dequeueReusableCellWithIdentifier("firstCell") as! PFTableViewCell
    return cell


}

1 ответ

Решение

Чтобы поиграть с размером ячейки, вы должны реализовать UITableViewDelegate функция

func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
if indexPath.row == 0 {
    return firstCellHeight
} else {
    return customCellHeight
}
Другие вопросы по тегам