UItable页脚查看问题

时间:2014-04-08 05:30:40

标签: ios iphone objective-c uitableview

在我的应用中,我需要设计带有标题,内容视图(表格视图)和可滚动的页脚视图的视图。内容视图数据将动态更改。所以我使用了表视图。我在表格视图页眉和页脚中添加了页眉和页脚视图。(我的目标是滚动页眉,内容和页脚视图,以便我在UI​​table视图页眉和页脚中添加我的自定义页眉和页脚视图。)

我的设计

enter image description here

如果表视图包含一些数据,它按照设计工作。问题是,如果表视图不包含任何数据(行数简单为0)。标题视图显示在视图的中间。(在这种情况下,表格视图框架自动收缩。)甚至我试图根据数据源计数处理表格视图框架。但我不能。

enter image description here

请指导我解决此问题。提前谢谢。

3 个答案:

答案 0 :(得分:0)

-(CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section

您可以使用此代码自定义UItableview的页脚高度

通过输入有效的if else

答案 1 :(得分:0)

表视图部分有标题视图和页脚视图。在这些之间是特定部分的单元格。听起来你想要模拟不存在的细胞的存在。

也许您真正想要的是标准UIView,因为您的页眉和页脚视图之间有UITableViewUITableView不会根据内容更改大小,并且会在不依赖于页眉和页脚视图的情况下滚动。

答案 2 :(得分:0)

在UItableView中,页脚总是出现在部分的末尾。但是这里没有任何单元格存在,并且您希望在页面底部显示页脚。

解决方案:

  • 在获取数据之前取一个单元格并设置该单元格的高度

    BOOL hasData;//Initialise in ViewDidLoad and set value according to data
    
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
if (!hasdata) {
    return 1;
}else{
    return dataArray.count;
}
}
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
    if (!hasData) {
        cellHeight =
        self.view.frame.size.height -
        (tableViewHeaderHeight+tableViewFooterHeight);
    }else{
        //Set row height
    }
}
  • 然后在获取tableview的数据后再次重新加载。

希望这对你有所帮助。试试这个。它对我有用。