ios – 未正确设置自定义UITableviewcell高度

ios – 未正确设置自定义UITableviewcell高度,第1张

概述我探讨了关于这个问题的现有Q& As SO,但没有找到我的答案. 我知道这是由tableview在运行时不知道自定义单元格的高度引起的,但不知道如何克服这个问题.这是iOS 8 Xcode 6.我为自定义单元格的内在大小做了所有自动布局所需的方法… >带有标准单元格的标准tableview,在代码中只创建一个(row = 2)作为自定义单元格; customCell: -(CGSize)intri 我探讨了关于这个问题的现有Q& As SO,但没有找到我的答案.

我知道这是由tablevIEw在运行时不知道自定义单元格的高度引起的,但不知道如何克服这个问题.这是iOS 8 Xcode 6.我为自定义单元格的内在大小做了所有自动布局所需的方法…

>带有标准单元格的标准tablevIEw,在代码中只创建一个(row = 2)作为自定义单元格;

customCell:

-(CGSize)intrinsicContentSize

{
   //用于测试目的的硬编码

return CGSizeMake(500.0,450.0);

}
>在iOS模拟器上运行时,发现customCell显示在其行下方的其他单元格下方,高度标准,与设置其他标准​​单元格高度相同,而不是其高度设置比其他单元格大得多.

在表视图控制器中:

- (UItableVIEwCell *)tableVIEw:(UItableVIEw *)tableVIEw cellForRowAtIndexPath:(NSIndexPath *)indexPath {    UItableVIEwCell *cell;    pageVIEwCelltableVIEwCell* customCell;    if (indexPath.row != 2)    {       cell = [tableVIEw dequeueReusableCellWithIDentifIEr:@"regularCell" forIndexPath:indexPath];        cell.textLabel.text = [Nsstring stringWithFormat:@"table Row %lu",indexPath.row];        return cell;    }    else    {        customCell = [tableVIEw dequeueReusableCellWithIDentifIEr:@"customCell"] ;        if (customCell == nil) {            customCell = [[customCell alloc] init];        }        customCell.parentVIEwController = self;        [customCell  setNeedsUpdateConstraints];        [customCell setNeedsLayout];        [customCell setNeedsdisplay];        return customCell;    }    return nil ;}- (CGfloat)tableVIEw: (UItableVIEw*)tableVIEw EstimatedHeightForRowAtIndexPath: (NSIndexPath*) indexPath {     if (indexPath.row != 2)         return 10;     else         return 450; } - (CGfloat)tableVIEw: (UItableVIEw*)tableVIEw HeightForRowAtIndexPath: (NSIndexPath*) indexPath {     if (indexPath.row != 2)         return 10;     else         return 450; }

在模拟器上运行时:

得到以下错误消息:
仅警告一次:检测到约束模糊地建议tablevIEw单元格的内容视图的高度为零的情况.我们正在考虑无意中崩溃并使用标准高度.

解决方法 您可以在iOS 8(Swift代码)中使用自行调整大小的单元格:

tableVIEw.estimatedRowHeight = 88.0tableVIEw.rowHeight = UItableVIEwautomaticDimension

下面列出了两个教程:

> Understanding Self Sizing Cells and Dynamic Type in iOS 8
> iOS 8: Self Sizing Table View Cells with Dynamic Type

总结

以上是内存溢出为你收集整理的ios – 未正确设置自定义UITableviewcell高度全部内容,希望文章能够帮你解决ios – 未正确设置自定义UITableviewcell高度所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1006175.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存