import UIKit public final class SmallAvatarAndTitleCell: UITableViewCell { // MARK: UI public let title = UILabel() public let avatar = AvatarView() private let separator = UIView() // MARK: Lifecycle public override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) { super.init(style: style, reuseIdentifier: reuseIdentifier) setup() } required init?(coder: NSCoder) { nil } public override func prepareForReuse() { super.prepareForReuse() title.text = nil avatar.prepareForReuse() } // MARK: Private private func setup() { selectedBackgroundView = UIView() multipleSelectionBackgroundView = UIView() backgroundColor = Asset.neutralWhite.color title.textColor = Asset.neutralActive.color title.font = Fonts.Mulish.semiBold.font(size: 14.0) separator.backgroundColor = Asset.neutralLine.color contentView.addSubview(title) contentView.addSubview(avatar) contentView.addSubview(separator) setupConstraints() } private func setupConstraints() { avatar.snp.makeConstraints { make in make.width.height.equalTo(30) make.left.equalToSuperview().offset(25) make.centerY.equalToSuperview() } title.snp.makeConstraints { make in make.centerY.equalTo(avatar) make.left.equalTo(avatar.snp.right).offset(14) make.right.lessThanOrEqualToSuperview().offset(-10) } separator.snp.makeConstraints { make in make.height.equalTo(1) make.left.equalToSuperview().offset(25) make.right.equalToSuperview() make.bottom.equalToSuperview() } } }