内容在UITableViewCell上无法正确显示

时间:2018-10-11 06:12:31

标签: ios swift uitableview

我要向表格视图单元格添加按钮:

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "mycell")

    cell?.backgroundColor = UIColor.clear

    let view2: UIView = UIView()
    view2.frame = CGRect(x: 0, y: 0, width: view.bounds.width, height: 100)

    view2.backgroundColor = UIColor.white

    cell?.contentView.addSubview(view2)

    prifilebtn = UIButton()
    prifilebtn.frame = CGRect(x: 20, y: (view.bounds.height-60)/2, width: 60, height: 60)
    prifilebtn.layer.cornerRadius = 30
    prifilebtn.clipsToBounds = true
    prifilebtn.backgroundColor = UIColor.red

    view2.addSubview(prifilebtn)

    return cell!
}

我添加到单元格的视图中,prifilebtn不能正确显示。我正在尝试以编程方式执行此操作。我不知道是什么原因导致的问题-感谢您的帮助。预先感谢

enter image description here

1 个答案:

答案 0 :(得分:1)

有很多方法可以自定义单元的UI。最好的方法是subclass UITableViewCell and there are many tutorials on how to do so

但是,如果要在更新单元格及其子视图的布局和框架时避免子类化,我认为最好在方法的回调中进行处理:

optional func tableView(_ tableView: UITableView, 
            willDisplay cell: UITableViewCell, 
               forRowAt indexPath: IndexPath)