【问题标题】:Tableview header is overlapping the cells表格视图标题与单元格重叠
【发布时间】:2019-09-16 18:22:15
【问题描述】:

我有一个带有表格视图的视图控制器。 Tableview 有一个表格视图标题和动态单元格。我添加了一个 UIView 作为表视图标题,它有多个动态高度的标签。一切正常。

但是当视图的大小(用作表格视图标题)由于视图中使用的标签的额外高度(由于额外的内容而被扩展)而扩展时,就会出现问题。

因此,表格视图的上部单元格被标题视图隐藏或重叠。有人可以帮我解决这种情况吗?所有这些都是使用故事板完成的。

【问题讨论】:

    标签: ios swift xcode tableview nstableheaderview


    【解决方案1】:

    在情节提要中添加表格视图标题时,您无法更改它的高度。 以编程方式创建表格视图标题并在heightForHeaderInSection 方法中创建return UITableView.automaticDimension

    override func viewDidLoad() {
        super.viewDidLoad()
        tableView.estimatedSectionHeaderHeight = 100
        tableView.sectionHeaderHeight = UITableView.automaticDimension
    }
    
    override func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
        let header = UIView()
    
        let lbl = UILabel()
        lbl.text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum"
        lbl.numberOfLines = 0
        lbl.lineBreakMode = .byWordWrapping
        lbl.translatesAutoresizingMaskIntoConstraints = false
        header.addSubview(lbl)
    
        header.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V:|-(10)-[lbl(>=30)]-(10)-|", options: [], metrics: nil, views: ["lbl":lbl]))
        header.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "H:|-(30)-[lbl]-(30)-|", options: [], metrics: nil, views: ["lbl":lbl]))
        return header
    }
    override func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
        return UITableView.automaticDimension
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多