我正在尝试制作类似卡片的cell
(看起来像是自己漂浮的)。现在,我只是想让一个红色的UIView
出现在单元格中(为空白留出12个像素)。这是UITableViewCell
类中的代码:
import UIKit
import PureLayout
class MovieTableViewCell: UITableViewCell {
let cardView = UIView()
override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
var margins = layoutMargins
margins.left = 12
margins.top = 12
margins.right = 12
margins.bottom = 12
contentView.layoutMargins = margins
cardView.backgroundColor = UIColor.red
contentView.addSubview(cardView)
contentView.backgroundColor = nil
contentView.preservesSuperviewLayoutMargins = false
cardView.autoPinEdgesToSuperviewMargins()
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
目前,我得到一个空白的
tableView
。没有红色视图出现。任何人都知道我所缺少的难题(P.S.我正在使用PureLayout) 最佳答案
tableView的contentView无法且不响应边距,它占用tableView的整个宽度,您还必须使用自动布局将redView放置到它的内容上,或者使用heightForRowAt
框架布局