TSHomeVC.swift 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. //
  2. // TSHomeVC.swift
  3. // TSLiveWallpaper
  4. //
  5. // Created by 100Years on 2024/12/20.
  6. //
  7. import TYCyclePagerView
  8. import Photos
  9. import PhotosUI
  10. class TSHomeVC : TSBaseVC {
  11. lazy var navBarView: TSBaseNavContentBarView = {
  12. let navBarView = TSBaseNavContentBarView()
  13. let titleImageView = UIImageView.createImageView(imageName: "nav_title_home",contentMode: .scaleToFill)
  14. navBarView.barView.addSubview(titleImageView)
  15. titleImageView.snp.makeConstraints { make in
  16. make.centerY.equalToSuperview()
  17. make.left.equalTo(16)
  18. make.width.equalTo(214)
  19. make.height.equalTo(24)
  20. }
  21. return navBarView
  22. }()
  23. lazy var collectionComponent: CollectionViewComponent = {
  24. let layout = UICollectionViewFlowLayout()
  25. let cp = CollectionViewComponent(frame: CGRect.zero, layout: layout, attributes: [ :])
  26. cp.collectionView.contentInset = UIEdgeInsets(top: 0, left: 0, bottom: k_Height_TabBar, right: 0)
  27. cp.itemActionHandler = { [weak self] cellCp, indexPath in
  28. }
  29. cp.itemDidSelectedHandler = { [weak self] (object, indexPath) in
  30. guard let self = self else { return }
  31. let obj = dataArray.safeObj(At: indexPath.section)
  32. if let bannerModel = obj as? TSHomeBannerDataSectionModel {
  33. if let items = bannerModel.itemModels.first{
  34. kPresentModalVC(target: self, modelVC: TSLiveWallpaperBrowseVC(itemModels: items.items,currentIndex: indexPath.row))
  35. }
  36. }else if let liveModel = obj as? TSImageDataSectionModel {
  37. kPresentModalVC(target: self, modelVC: TSLiveWallpaperBrowseVC(itemModels: liveModel.items,currentIndex: indexPath.row))
  38. }
  39. }
  40. cp.itemActionHandler = { obj, index in
  41. }
  42. cp.itemWillDisplayHandler = { cell, obj, IndexPath in
  43. }
  44. cp.itemDidEndDisplayingHandler = { cell, obj, indexPath in
  45. }
  46. return cp
  47. }()
  48. var dataArray:[Component] = kImageDataCenterShared.liveBannerArray + kImageDataCenterShared.liveListArray
  49. override func createView() {
  50. setViewBgImageNamed(named: "view_main_bg")
  51. navBarContentView.addSubview(navBarView)
  52. navBarView.snp.makeConstraints { make in
  53. make.edges.equalToSuperview()
  54. }
  55. contentView.addSubview(collectionComponent.collectionView)
  56. collectionComponent.collectionView.snp.makeConstraints { make in
  57. make.edges.equalToSuperview()
  58. }
  59. collectionComponent.reloadView(with:dataArray)
  60. }
  61. }