Files
yingmeng-ios-switf/yinmeng-ios/Modules/Home/HomeVoicePlayMusicItemView.swift
2024-03-05 14:04:09 +08:00

71 lines
2.1 KiB
Swift

//
// HomeVoicePlayMusicItemView.swift
// yinmeng-ios
//
// Created by yinmeng on 2024/2/29.
//
import UIKit
import Nuke
class HomeVoicePlayMusicItemView: UIView {
override init(frame: CGRect) {
super.init(frame: frame)
setUILayout()
}
func setUILayout(){
addSubview(bgImageView)
bgImageView.addSubview(avatarView)
addSubview(nameTextView)
bgImageView.snp.makeConstraints { make in
make.left.right.top.equalTo(self)
make.height.equalTo(90)
}
avatarView.snp.makeConstraints { make in
make.width.height.equalTo(58)
make.center.equalTo(self.bgImageView)
}
nameTextView.snp.makeConstraints { make in
make.top.equalTo(self.bgImageView.snp.bottom).offset(4)
make.left.right.equalTo(self)
make.height.equalTo(20)
}
}
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
}
}
var bgImageView:UIImageView = {
let _bgImageView = UIImageView()
_bgImageView.image = UIImage(named: "yin_home_voice_play_music_item_bg")
_bgImageView.isUserInteractionEnabled = true
return _bgImageView
}()
var avatarView:UIImageView = {
let _avatarView = UIImageView()
_avatarView.isUserInteractionEnabled = true
_avatarView.layer.cornerRadius = 58/2;
_avatarView.layer.masksToBounds = true
_avatarView.layer.borderWidth = 2
_avatarView.layer.borderColor = UIColor.white.cgColor
return _avatarView
}()
var nameTextView:UILabel = {
let _nameTextView = UILabel()
_nameTextView.textColor = .white
_nameTextView.font = UIFont.systemFont(ofSize: 14, weight: .medium)
_nameTextView.textAlignment = .center
return _nameTextView
}()
}