Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 如果使用自定义UITableViewCell,是否需要设置RowatineXpath的高度?_Iphone_Objective C_Cocoa Touch_Uitableview_Interface Builder - Fatal编程技术网

Iphone 如果使用自定义UITableViewCell,是否需要设置RowatineXpath的高度?

Iphone 如果使用自定义UITableViewCell,是否需要设置RowatineXpath的高度?,iphone,objective-c,cocoa-touch,uitableview,interface-builder,Iphone,Objective C,Cocoa Touch,Uitableview,Interface Builder,如果使用自定义UITableViewCell,是否需要设置RowatineXpath的高度?在我的笔尖中,我已经设置了单元格高度 当我在索引路径上超出Row的高度时,单元格的内容不会显示,即使它设置为NIB中定义的高度 如果我没有超出索引路径中行的高度,单元格的内容会出现,但由于默认高度不够大,因此会出现溢出。如果所有行的高度相同,然后,您可以设置UITableView的rowHeight属性,而不是实现tableView:heightforrowatinexpath:。如果有不同高度的行,则必

如果使用自定义UITableViewCell,是否需要设置RowatineXpath的高度?在我的笔尖中,我已经设置了单元格高度

当我在索引路径上超出Row的高度时,单元格的内容不会显示,即使它设置为NIB中定义的高度


如果我没有超出索引路径中行的高度,单元格的内容会出现,但由于默认高度不够大,因此会出现溢出。

如果所有行的高度相同,然后,您可以设置
UITableView
rowHeight
属性,而不是实现
tableView:heightforrowatinexpath:
。如果有不同高度的行,则必须实现
tableView:heightforrow索引路径:

这两种方法都不会自动返回您在NIB中定义的单元格高度,因为在
tableView:cellForRowAtIndexPath:
中开始构建单元格之前会调用它们


要使用NIB中定义的单元格高度,我建议您为控制器定义一个名为
prototypeCell
的自定义属性,该属性将保存一个从未在表中显示的单元格。在
tableView:heightForRowAtIndexPath:
中,检查
prototypeCell
是否为零。如果是,则从NIB初始化它。然后返回
prototypeCell.frame.size.height

如何初始化prototypeCell?您是否正在使用
initWithStyle:reuseIdentifier:
?如果我使用它,那么
prototypeCell.frame.size.height
返回默认高度(44),而不是在xib中定义的高度。nib加载可以为您初始化它,并将包括正确的高度。您可以为单元注册nib,或者将原型单元映射到控制器的xib中的IBOutlet。