| | |
| | | // |
| | | // StudentRemarkTCell.swift |
| | | // WanPai |
| | | // |
| | | // Created by 无故事王国 on 2023/6/27. |
| | | // |
| | | // |
| | | // StudentRemarkTCell.swift |
| | | // WanPai |
| | | // |
| | | // Created by 无故事王国 on 2023/6/27. |
| | | // |
| | | |
| | | import UIKit |
| | | import JQTools |
| | | import Lantern |
| | | |
| | | class StudentRemarkTCell: UITableViewCell { |
| | | |
| | | private let cellW:Double = (JQ_ScreenW - 48.0) / 3.0 |
| | | var studentCommentModel:StudentCommentModel!{ |
| | | didSet{ |
| | | img_profile.sd_setImage(with: URL(string: studentCommentModel.headImg)) |
| | | label_name.text = studentCommentModel.stuName |
| | | label_datetime.text = studentCommentModel.comTime |
| | | |
| | | label_content.attributedText = AttributedStringbuilder.build().add(string: studentCommentModel.contents, withFont: UIFont.systemFont(ofSize: 12), withColor: UIColor.black.withAlphaComponent(0.8), lineSpace: 5).mutableAttributedString |
| | | let count = studentCommentModel.imgs.count |
| | | cons_imgHei.constant = ceil(Double(count) / 3) * cellW + floor(Double(count) / 3) * 9 |
| | | collectionView.reloadData() |
| | | } |
| | | } |
| | | |
| | | private let cellW:Double = (JQ_ScreenW - 55.0) / 3.0 |
| | | @IBOutlet weak var collectionView: UICollectionView! |
| | | @IBOutlet weak var img_profile: UIImageView! |
| | | @IBOutlet weak var label_name: UILabel! |
| | | @IBOutlet weak var label_datetime: UILabel! |
| | | @IBOutlet weak var label_content: UILabel! |
| | | @IBOutlet weak var cons_imgHei: NSLayoutConstraint! |
| | | |
| | | override func awakeFromNib() { |
| | |
| | | collectionView.dataSource = self |
| | | collectionView.isScrollEnabled = false |
| | | collectionView.register(UINib(nibName: "CommonSingleImgCCell", bundle: nil), forCellWithReuseIdentifier: "_CommonSingleImgCCell") |
| | | cons_imgHei.constant = ceil(9 / 3) * cellW + floor(9 / 3) * 9 |
| | | cons_imgHei.constant = 0 |
| | | } |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { |
| | | return 9 |
| | | return studentCommentModel.imgs.count |
| | | } |
| | | } |
| | | |
| | | extension StudentRemarkTCell:UICollectionViewDelegate{ |
| | | func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) { |
| | | let lantern = Lantern() |
| | | lantern.numberOfItems = {[weak self] in |
| | | return self?.studentCommentModel.imgs.count ?? 0 |
| | | } |
| | | |
| | | lantern.cellClassAtIndex = { _ in |
| | | LanternImageCell.self |
| | | } |
| | | |
| | | lantern.transitionAnimator = LanternZoomAnimator(previousView: { index -> UIView? in |
| | | |
| | | let cell = collectionView.cellForItem(at: IndexPath(item: index, section: indexPath.section)) as! CommonSingleImgCCell |
| | | return cell.img |
| | | }) |
| | | |
| | | |
| | | // UIPageIndicator样式的页码指示器 |
| | | lantern.pageIndicator = LanternDefaultPageIndicator() |
| | | |
| | | lantern.pageIndex = indexPath.item |
| | | |
| | | lantern.reloadCellAtIndex = { context in |
| | | let lanternCell = context.cell as? CommonSingleImgCCell |
| | | |
| | | let cell = collectionView.cellForItem(at: IndexPath(item:context.index, section: indexPath.section)) as! CommonSingleImgCCell |
| | | lanternCell?.img.image = cell.img.image |
| | | } |
| | | //不要使用push |
| | | lantern.show() |
| | | } |
| | | |
| | | } |
| | | |