68 lines
2.1 KiB
Swift
68 lines
2.1 KiB
Swift
//
|
|
// HomeVoiceFollowCell.swift
|
|
// yinmeng-ios
|
|
//
|
|
// Created by duoban on 2024/2/29.
|
|
//
|
|
|
|
import UIKit
|
|
import Nuke
|
|
class HomeVoiceFollowCell: UICollectionViewCell {
|
|
override init(frame: CGRect) {
|
|
super.init(frame: frame)
|
|
setUILayout()
|
|
|
|
}
|
|
func setUILayout(){
|
|
contentView.addSubview(avatarView)
|
|
contentView.addSubview(sexImageView)
|
|
contentView.addSubview(nameTextView)
|
|
|
|
avatarView.snp.makeConstraints { make in
|
|
make.width.height.equalTo(48)
|
|
make.top.equalTo(self.contentView)
|
|
make.centerX.equalTo(self.contentView)
|
|
}
|
|
sexImageView.snp.makeConstraints { make in
|
|
make.width.height.equalTo(12)
|
|
make.bottom.right.equalTo(avatarView)
|
|
}
|
|
nameTextView.snp.makeConstraints { make in
|
|
make.top.equalTo(avatarView.snp.bottom).offset(4)
|
|
make.left.right.equalTo(self.contentView)
|
|
make.height.equalTo(17)
|
|
}
|
|
}
|
|
required init?(coder: NSCoder) {
|
|
fatalError("init(coder:) has not been implemented")
|
|
}
|
|
var model:HomeVoiceModel? = nil{
|
|
didSet{
|
|
guard let _model = model else{return}
|
|
Nuke.loadImage(with: _model.avatar, into: avatarView)
|
|
nameTextView.text = _model.nick
|
|
sexImageView.image = _model.gender == 1 ? UIImage(named: "yin_plane_star_man") : UIImage(named: "yin_plane_star__woman")
|
|
}
|
|
}
|
|
var avatarView:UIImageView = {
|
|
let _avatarView = UIImageView()
|
|
|
|
_avatarView.isUserInteractionEnabled = true
|
|
_avatarView.layer.cornerRadius = 48/2;
|
|
_avatarView.layer.masksToBounds = true
|
|
return _avatarView
|
|
}()
|
|
var sexImageView:UIImageView = {
|
|
let _sexImageView = UIImageView()
|
|
|
|
return _sexImageView
|
|
}()
|
|
var nameTextView:UILabel = {
|
|
let _nameTextView = UILabel()
|
|
_nameTextView.textColor = .white
|
|
_nameTextView.font = UIFont.systemFont(ofSize: 12, weight: .regular)
|
|
_nameTextView.textAlignment = .center
|
|
return _nameTextView
|
|
}()
|
|
}
|