UITableViewCell高度为0行

时间:2010-05-30 06:40:10

标签: objective-c iphone

我的应用程序中有一个适度非自定义的UITableView,它为网络游戏提供了多达6个对等阵列。如果没有找到对等体,则numberOfRowsInSection为0,因此当它加载时,表中没有行:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return 0;
} 

麻烦的是,除非numberOfRowsInSection>>,否则不调整每个单元格的高度以匹配heightForRowAtIndexPath。 0.我在“1”中为numberOfRowsInSection硬编码,高度按预期调整。

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    return kTableRowHeight;
}

谁能告诉我为什么会这样?一旦所呈现的数据长度超过“0”,表格单元格的高度是否会跳到正确的高度?即使行长为0,我也希望它们是正确的高度。

2 个答案:

答案 0 :(得分:2)

尝试在rowHeight上设置UITableView属性。我的猜测是它甚至不会调用heightForRowAtIndexPath,除非该行中确实有一个单元格。

(顺便说一句,顺便提一下,如果所有行都是相同的高度,则应使用rowHeight代替heightForRowAtIndexPath - 请参阅docs。)

答案 1 :(得分:1)

有效。只需在[self.tableView setRowHeight:XX]中添加viewDidLoad()