滚动时UITableView节标题视图消失

时间:2017-02-23 16:43:21

标签: ios swift uitableview

我目前在UITableView中使用了一些自定义节标题视图。加载UITableView时会显示视图,但滚动时会消失。我看过这篇文章,但似乎过时了:tableView section headers disappear SWIFT 这是标题视图的代码:

  func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {

      let view = UIView()

      switch section {
      case 0: break

      default:

        view.backgroundColor = UIColor.clear
        let image = UIImageView(image:"Line")
        image.frame = CGRect(x: 8, y: 35, width: 340, height: 1)
        view.addSubview(image)

        let label = UILabel()
        let sectionText = self.sectionTitles[section]
        label.text = sectionText
        label.textColor = UIColor.white
        label.font = UIFont(name:"Helvetica Neue" , size: 17)
        label.frame = CGRect(x: 10, y: 8, width: 200, height: 20)
        view.addSubview(label)
        }

      return view
  }


  func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
    let headerHeight: CGFloat

    switch section {
    case 0:
      // hide the first section header
      headerHeight = CGFloat.leastNonzeroMagnitude
    default:
      headerHeight = 40
    }

    return headerHeight
  }

1 个答案:

答案 0 :(得分:3)

当表格的 UITableViewStyle 属性设置为 UITableViewStylePlain 时,标题才会保持不变。如果将它设置为UITableViewStyleGrouped,则标题将向上滚动单元格。

因此,如果你想修复标题,那么你需要将UITableViewStyle设置为UITableViewStylePlain

如果你想向上滚动单元格而不是你需要将 UITableViewStyle 设置为 UITableViewStyleGrouped