85 lines
2.0 KiB
Swift
85 lines
2.0 KiB
Swift
//
|
|
// UploadImageCell.swift
|
|
// SHECommunity
|
|
//
|
|
// Created by Lin on 2024/12/23.
|
|
//
|
|
|
|
import UIKit
|
|
import RxSwift
|
|
|
|
class UploadImageCell: UICollectionViewCell {
|
|
|
|
var disposeBag = DisposeBag()
|
|
|
|
func configure(image: UIImage?=nil, imageUrl: String?=nil) {
|
|
if let image = image {
|
|
imgView.image = image
|
|
}
|
|
if let imageUrl = imageUrl {
|
|
// playImgView.isHidden = !imageUrl.contains(".mp4")
|
|
imgView.dl.setImage(with: imageUrl)
|
|
}
|
|
}
|
|
|
|
private func setupSubViews() {
|
|
addSubview(bgView)
|
|
bgView.addSubview(imgView)
|
|
addSubview(deleteBtn)
|
|
|
|
setupLayout()
|
|
}
|
|
|
|
private func setupLayout() {
|
|
bgView.layoutChain
|
|
.top(6)
|
|
.left()
|
|
.right(6)
|
|
.bottom()
|
|
|
|
imgView.layoutChain.edges()
|
|
|
|
deleteBtn.layoutChain
|
|
.top()
|
|
.right()
|
|
.width(18)
|
|
.heightToWidth(1.0)
|
|
}
|
|
|
|
lazy var bgView: UIView = {
|
|
let view = UIView()
|
|
view.cornerRadius = 8
|
|
view.borderWidth = 0.5
|
|
view.borderColor = UIColor(hexStr: "E6E6E6")//ThemeManager.shared.color.lineColor
|
|
view.clipsToBounds = true
|
|
return view
|
|
}()
|
|
|
|
lazy var imgView: UIImageView = {
|
|
let view = UIImageView()
|
|
view.contentMode = .scaleAspectFill
|
|
return view
|
|
}()
|
|
|
|
lazy var deleteBtn: UIButton = {
|
|
let button = UIButton (type: .custom)
|
|
button.setImage(UIImage(named: "Common/close_black"), for: .normal)
|
|
return button
|
|
}()
|
|
|
|
override init(frame: CGRect) {
|
|
super.init(frame: frame)
|
|
contentView.backgroundColor = .clear
|
|
setupSubViews()
|
|
}
|
|
|
|
required init?(coder: NSCoder) {
|
|
fatalError("init(coder:) has not been implemented")
|
|
}
|
|
|
|
override func prepareForReuse() {
|
|
super.prepareForReuse()
|
|
disposeBag = DisposeBag()
|
|
}
|
|
}
|