Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/99.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
Ios 为什么分组部分中的第一个和最后一个单元格不使用分隔符插入?_Ios_Swift_Storyboard_Ios13 - Fatal编程技术网

Ios 为什么分组部分中的第一个和最后一个单元格不使用分隔符插入?

Ios 为什么分组部分中的第一个和最后一个单元格不使用分隔符插入?,ios,swift,storyboard,ios13,Ios,Swift,Storyboard,Ios13,我希望能够将表视图中的所有分隔符插入一定量。此表视图需要为每个部分提供一个自定义标题。有关所需的插图,请参见下图: 我的故事板是这样设置的:我有一个UIViewController,其中包含一个容器UIView,而容器UIView又有一个UITableView的嵌入序列。我的表格视图指定了一个原型单元,我在故事板中设置了一个分组样式,默认分隔符,带有自动插入 在故事板的“表格视图”单元中,左侧有一个自定义分隔符插图26 在我的表视图控制器中,我实现了以下两种方法: override func

我希望能够将表视图中的所有分隔符插入一定量。此表视图需要为每个部分提供一个自定义标题。有关所需的插图,请参见下图:

我的故事板是这样设置的:我有一个UIViewController,其中包含一个容器UIView,而容器UIView又有一个UITableView的嵌入序列。我的表格视图指定了一个原型单元,我在故事板中设置了一个分组样式,默认分隔符,带有自动插入

在故事板的“表格视图”单元中,左侧有一个自定义分隔符插图26

在我的表视图控制器中,我实现了以下两种方法:

override func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
    let header = tableView.dequeueReusableHeaderFooterView(withIdentifier: "ItemHeader") as! TableSectionHeaderViewCell
    header.title.text = "My Custom Date Header"
    return header
}

override func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
    return 60.0
}
在另一个文件中,我将UITableViewHeaderFooterView子类化,以便只设置字体、文本颜色和一些约束

现在,如果我在列表视图级别的故事板上设置一个自定义分隔符插入,从左侧插入26个,无论是从单元格边缘还是从自动插入,显示在每个标题下方的分隔符都不会发生任何变化。类似地,如果我在表视图控制器的
viewDidLoad
方法中以编程方式设置这些值,如下所示:

override func viewDidLoad() {
    super.viewDidLoad()

    tableView.rowHeight = UITableView.automaticDimension
    tableView.register(TableSectionHeaderViewCell.self, forHeaderFooterViewReuseIdentifier: "ItemHeader")

    tableView.separatorInset = UIEdgeInsets(top: 0, left: 26, bottom: 0, right: 0)
    tableView.separatorStyle = .singleLine
    tableView.separatorInsetReference = .fromCellEdges
}
即使使用分隔符插入引用的
.fromAutomaticInsets
选项,分隔符插入也不会发生任何更改。以下是我实际看到的情况:


看起来,一个部分中的第一个和最后一个单元格实际上并不涉及分隔符插图。我原本以为这是一个与每个分组部分都有一个标题相关的问题,但下面没有标题的最后一个单元格上的分隔符似乎表明情况并非如此。我怎样才能使这些分离器都插入26分?感谢您提供的任何见解。

请检查此线程,我认为它将有助于:

我可以看到,他们删除了默认的分隔符(使用清晰的颜色),并为分隔符本身设置了一个自定义视图


我可以建议的另一个选择是,不要使用组样式的表视图,使用普通的表视图,自己处理。

谢谢您的建议;我已经看到这篇文章了,看起来他们正试图移除分隔符,这不是我想要的。我希望能够更改这些分离器的插入,而我迄今为止尝试的每一件事情都不起作用。不幸的是,它们没有演示如何在该线程中操作这些分隔符;我可以看到它删除了它们,并为它们自己设置了一个分隔符的自定义视图。我可以建议的另一个选择是不要使用组样式的表视图,而是使用普通的表视图。我开始探索普通的表视图作为一个选项。这似乎是不可避免的,您必须使用这两种方法添加自己的分隔符,不幸的是,没有定制选项。我强烈反对要求您了解底层视图结构的方法,因为这可能会发生变化,所以至少使分隔符不可见并使用自定义分隔符是更好的选择。