繁体   English   中英

如何在iOS 7中删除UITableView第一行之前的间隙

[英]How to remove gap before first row of UITableView in IOS 7

在我的UIViewController中,我拖动了一个具有2个自定义原型单元的UITableView。 基本上是手风琴。 当我在上面加载数据时,在表格视图的起始位置和第一行之间总是存在间隙。 当我向下滚动它的工作正常时,我已经在Google中搜索并找到了一些建议,例如

 self.automaticallyAdjustsScrollViewInsets = YES;

在viewDidLoad中或在下面的代码中添加

UIEdgeInsets insets = UIEdgeInsetsMake(self.topLayoutGuide.length,
                                       0.0,
                                       self.bottomLayoutGuide.length,
                                       0.0);
_detailsTableView.contentInset = insets;

要么

 YouStoryboard.storyboard > YouViewController > Attributes inspector > Uncheck - Adjust scroll view insets

但是这些都不适合我。 这是我的UITableView屏幕截图。 请提出如何消除红色标记的空白的建议。

在此处输入图片说明

解决此问题后,UITableView应该看起来像

在此处输入图片说明

检查员图像1

在此处输入图片说明

尝试实现此方法:

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
    CGFloat height = UITableViewAutomaticDimension;
    if (section == 0) {
        height = 0.5f;
    }
    return height;
}

这将删除第一节标题的间距。 如果要删除各节之间的所有间距,则始终可以返回0.5f。 需要这样的奇数值,因为Apple不允许您使用此方法返回0。 (这与完全不执行该方法具有相同的效果。)但是值0.5f将具有所需的效果。

我认为您要摆脱的空间是标题。 使用tableview委托将第0节的标题设置为0的高度。

tableView:heightForHeaderInSection

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM