TSAIListHistoryBaseCell.swift 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. //
  2. // TSAIListHistoryBaseCell.swift
  3. // AIEmoji
  4. //
  5. // Created by 100Years on 2025/4/18.
  6. //
  7. class TSAIListHistoryBaseCell: TSBaseCollectionCell,TSSimpleConfigurableView {
  8. weak var delegate: (any TSSmalCoacopods.TSSimpleCollectionViewDelegate)?
  9. var indexPath: IndexPath = IndexPath(item: 0, section: 0)
  10. var data: Any? {
  11. didSet {
  12. // debugPrint("TSAIListHistoryBaseCell data didSet")
  13. if let dataModel = data as? TSActionInfoModel{
  14. videoIconImageView.isHidden = true
  15. exampleView.isHidden = true
  16. if dataModel.modelType == .example {
  17. textLabel.text = "Example".localized
  18. exampleView.isHidden = false
  19. showImageView.image = UIImage(named: dataModel.response.resultUrl)
  20. }else{
  21. if dataModel.isVideo {
  22. videoIconImageView.isHidden = false
  23. self.showImageView.image = UIImage(contentsOfFile: dataModel.videoThumbnailURL.path)
  24. }else {
  25. showImageView.setAsyncImage(urlString: dataModel.response.resultUrl,contentMode: .scaleAspectFill,backgroundColor: .white.withAlphaComponent(0.1))
  26. }
  27. }
  28. }
  29. }
  30. }
  31. lazy var textLabel: UILabel = {
  32. let textLabel = UILabel.createLabel(
  33. text: "Example".localized,
  34. font: .font(size: 12),
  35. textColor: .white
  36. )
  37. return textLabel
  38. }()
  39. lazy var exampleView: UIView = {
  40. let exampleView = UIView()
  41. exampleView.backgroundColor = "#232323".uiColor.withAlphaComponent(0.3)
  42. exampleView.addSubview(textLabel)
  43. textLabel.snp.makeConstraints { make in
  44. make.top.edges.equalTo(UIEdgeInsets(top: 4, left: 6, bottom: 4, right: 6))
  45. }
  46. exampleView.isHidden = true
  47. exampleView.cornerRadius = 10.0
  48. return exampleView
  49. }()
  50. lazy var showImageView: UIImageView = {
  51. let showImageView = UIImageView.createImageView(imageName:"",contentMode: .scaleAspectFill)
  52. showImageView.backgroundColor = .gray
  53. showImageView.layer.cornerRadius = 18
  54. return showImageView
  55. }()
  56. lazy var videoIconImageView: UIImageView = {
  57. let videoIconImageView = UIImageView.createImageView(imageName:"video_icon",contentMode: .scaleToFill)
  58. videoIconImageView.isHidden = true
  59. return videoIconImageView
  60. }()
  61. override func creatUI() {
  62. // debugPrint("TSAIListHistoryBaseCell creatUI")
  63. contentView.addSubview(showImageView)
  64. showImageView.snp.makeConstraints { make in
  65. make.top.equalTo(0)
  66. make.leading.equalTo(0)
  67. make.trailing.bottom.equalTo(0)
  68. }
  69. contentView.addSubview(exampleView)
  70. exampleView.snp.makeConstraints { make in
  71. make.top.equalTo(8)
  72. make.leading.equalTo(8)
  73. make.height.equalTo(20)
  74. }
  75. contentView.addSubview(videoIconImageView)
  76. videoIconImageView.snp.makeConstraints { make in
  77. make.top.equalTo(8)
  78. make.leading.equalTo(8)
  79. make.width.height.equalTo(24)
  80. }
  81. }
  82. }