PopularVideoCollectionViewCell.swift 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. //
  2. // PopularVideoCollectionViewCell.swift
  3. // RainbowPlanet
  4. //
  5. // Created by 南鑫林 on 2019/6/16.
  6. // Copyright © 2019 RainbowPlanet. All rights reserved.
  7. //
  8. import UIKit
  9. import Kingfisher
  10. class PopularVideoCollectionViewCell: UICollectionViewCell {
  11. class func cellWith(collectionView:UICollectionView,indexPath:IndexPath) -> PopularVideoCollectionViewCell {
  12. let ID = "PopularVideoCollectionViewCell"
  13. collectionView.register(PopularVideoCollectionViewCell.self, forCellWithReuseIdentifier: ID)
  14. let cell : PopularVideoCollectionViewCell = collectionView.dequeueReusableCell(withReuseIdentifier: ID, for: indexPath) as! PopularVideoCollectionViewCell
  15. cell.indexPath = indexPath
  16. return cell
  17. }
  18. //MARK: - indexPath
  19. var indexPath: IndexPath?{
  20. didSet {
  21. }
  22. }
  23. //MARK: - 初始化
  24. override init(frame: CGRect) {
  25. super.init(frame: frame)
  26. setupViews()
  27. setupLayouts()
  28. }
  29. required init?(coder aDecoder: NSCoder) {
  30. fatalError("init(coder:) has not been implemented")
  31. }
  32. //MARK: - 设置view
  33. private func setupViews() {
  34. addSubview(picImageView)
  35. addSubview(avatarImageView)
  36. addSubview(nameLabel)
  37. }
  38. private func setupLayouts() {
  39. picImageView.snp.makeConstraints { (make) in
  40. make.top.left.right.bottom.equalToSuperview()
  41. }
  42. avatarImageView.snp.makeConstraints { (make) in
  43. make.centerX.equalToSuperview()
  44. make.top.equalTo(136)
  45. make.size.equalTo(54)
  46. }
  47. nameLabel.snp.makeConstraints { (make) in
  48. make.top.equalTo(avatarImageView.snp.bottom).offset(10)
  49. make.height.equalTo(17)
  50. make.left.equalTo(5)
  51. make.right.equalTo(-5)
  52. }
  53. }
  54. private lazy var picImageView : UIImageView = {
  55. let picImageView = UIImageView()
  56. picImageView.image = kImage(name: "default_pic")
  57. picImageView.cornerRadius = 4
  58. picImageView.masksToBounds = true
  59. return picImageView
  60. }()
  61. private lazy var avatarImageView : UIImageView = {
  62. let avatarImageView = UIImageView()
  63. avatarImageView.image = kImage(name: "default_avatar")
  64. avatarImageView.cornerRadius = 27
  65. avatarImageView.masksToBounds = true
  66. return avatarImageView
  67. }()
  68. private lazy var nameLabel: UILabel = {
  69. let nameLabel = UILabel()
  70. nameLabel.textColor = kffffffColor
  71. nameLabel.font = kMediumFont12
  72. nameLabel.textAlignment = .center
  73. return nameLabel
  74. }()
  75. var communityRecommendTypeDataModel : CommunityRecommendTypeDataModel? {
  76. didSet {
  77. picImageView.kf.setImage(with: kURLThumbnailsImage(name: communityRecommendTypeDataModel?.img ?? "",size: self.size), placeholder: kImage(name: "default_pic"))
  78. avatarImageView.kf.setImage(with: kURLImage(name: communityRecommendTypeDataModel?.avatar ?? ""), placeholder: kImage(name: "default_avatar"))
  79. nameLabel.text = communityRecommendTypeDataModel?.userName
  80. }
  81. }
  82. }