当我设置一个包含4行的表视图时,在填充的行下面仍然有额外的分隔符行(或额外的空白单元格).

我该如何移除这些细胞呢?

image for extra separator lines in UITableView

推荐答案

Interface builder (iOS 9+)

只需将一个UI视图拖到表中即可.在故事板中,它将位于自定义单元格的顶部.您可能更喜欢将其命名为"Footer".

为了清晰起见,这里用绿色显示,您可能想要清晰的 colored颜色 .

请注意,通过调整高度,您可以根据自己的喜好影响如何处理桌子的"底部反弹".(高度为零通常可以).

enter image description here


要以编程方式执行此操作,请执行以下操作:

Swift

override func viewDidLoad() {
    super.viewDidLoad()
    self.tableView.tableFooterView = UIView()
}

Objective-C

iOS 6.1+

- (void)viewDidLoad 
{
    [super viewDidLoad];

    // This will remove extra separators from tableview
    self.tableView.tableFooterView = [UIView new];
}

或者如果你愿意,

    self.tableView.tableFooterView = [[UIView alloc] initWithFrame:CGRectZero];

在iOS中:

添加到表视图控制器.

- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section {
     // This will create a "invisible" footer
     return CGFLOAT_MIN;
 }

如果有必要...

- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section
{        
    return [UIView new];

    // If you are not using ARC:
    // return [[UIView new] autorelease];
}

Ios相关问答推荐

如何正确测试后台URLSessionDownloadTask?

RN 0.63支持iOS ProMotion?

以编程方式更改VC&39;S导航栏按钮的属性,以响应另一个VC中的按钮按下

如何使用参与者允许并行读取,但阻止对SWIFT中资源的并发读取和写入?

当操作修改查看条件时,按钮不重复

Xcode 15中的版本控制发生了什么?

Swift中是否有一种方法可以为可选属性创建一个计算(computed)属性

尽管存在浮点错误,如何显示正确的计算结果.计算器应用程序

如何将 -fobjc-arc-exceptions 标志正确添加到 XCode 中?

为什么常量属性可能在 Swift 类中被初始化两次?

如何解码没有名称的 JSON 数组?

如何在Collection 后更改并保留按钮 colored颜色 ,然后在 SwiftUI 中切换回来?

UIViewRepresentable - MKMapView 没有得到更新

我们可以在 Swift 中将 struct 中的 Codable 键设置为不区分大小写吗

在 Swift 中合并子数组

@IBDesignable 崩溃代理

如何动态计算 UILabel 高度?

iOS:设备旋转后如何运行函数(Swift)

Xcode中的终端窗口?

我可以在 UIScrollView 中使用 UIRefreshControl 吗?