ios - heightForRowatIndexPath 不设置单元格高度

标签 ios uitableview heightforrowatindexpath

我正在尝试创建一个包含 3 个组的分组 TableView ,每个组都有不同高度的单元格。我在我的 Storyboard 中设置了 3 个具有适当高度的原型(prototype)单元,并设置了我的 UITableViewController 以返回每行的适当高度。但是由于某种原因,我的所有单元格出现在屏幕上时都只有 1 个像素高。

我已经逐步完成了代码,并为每一行返回了正确的高度和单元格。我还验证了每个单元格的框架在返回之前是正确的。但是调用 rectForRowAtIndexPath显示 rect每行只有 1 像素高。

当使用恒定的像元高度时,这个问题就完全消失了。在这种情况下,单元格显示完美,其中一些太短/太高,因为它们应该是可变高度。

有什么想法吗?我想了解使用 heightForRowAtIndexPath 时如何确定每行的矩形。 .

heightForRowAtIndexPath 的代码:

- (NSInteger)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{    
    switch (indexPath.section) {
        case 0:
            return 80.0;
            break;

        case 1:
            return 260.0;
            break;

        case 2:
            return 110.0;
            break;

        case 3:
            return 114.0;
           break;

        default:
            break;
    }
    return 0;
}

最佳答案

您已声明 tableView:heightForRowAtIndexPath:返回 NSInteger .

那应该是 CGFloat .

关于ios - heightForRowatIndexPath 不设置单元格高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11906346/

相关文章:

ios - 在 iOS 中以编程方式获取应用程序的版本

ios - SKAction 暂停播放声音循环

ios - UITextView 无法正确显示字母

ios - viewForHeaderInSection 对齐错误(Swift 3)

ios - Navigation Bar 消失 Change Root ViewController 然后重新赋值

objective-c - 崩溃线程是iOS崩溃报告中唯一重要的线程吗?

iphone - UITableView 中的编辑模式

ios - UITableViewCell 框架高度始终为 44px

ios - 具有自定义单元格和标签的heightForRowAtIndexPath