NCEmpty.swift 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. //
  2. // NCEmpty.swift
  3. // Nextcloud
  4. //
  5. // Created by Marino Faggiana on 19/10/2020.
  6. // Copyright © 2020 Marino Faggiana. All rights reserved.
  7. //
  8. import Foundation
  9. class NCEmpty: NSObject {
  10. var emptyView: NCEmptyView?
  11. var collectioView: UICollectionView?
  12. init(collectioView: UICollectionView, image: UIImage, title: String, description: String) {
  13. super.init()
  14. self.collectioView = collectioView
  15. emptyView = UINib(nibName: "NCEmptyView", bundle: nil).instantiate(withOwner: self, options: nil).first as? NCEmptyView
  16. emptyView?.emptyImage.image = image
  17. emptyView?.emptyTtle.text = title
  18. emptyView?.emptyDescription.text = description
  19. emptyView?.leftAnchor.constraint(equalTo: collectioView.leftAnchor).isActive = true
  20. emptyView?.rightAnchor.constraint(equalTo: collectioView.rightAnchor).isActive = true
  21. emptyView?.topAnchor.constraint(equalTo: collectioView.topAnchor).isActive = true
  22. emptyView?.bottomAnchor.constraint(equalTo: collectioView.bottomAnchor).isActive = true
  23. }
  24. func reload() {
  25. let items = collectioView?.numberOfItems(inSection: 0)
  26. if items == 0 && emptyView != nil {
  27. collectioView?.addSubview(emptyView!)
  28. } else {
  29. emptyView!.removeFromSuperview()
  30. }
  31. }
  32. }
  33. class NCEmptyView: UIView {
  34. @IBOutlet weak var emptyImage: UIImageView!
  35. @IBOutlet weak var emptyTtle: UILabel!
  36. @IBOutlet weak var emptyDescription: UILabel!
  37. }