IHFloorPicker.swift 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. //
  2. // IHFloorPicker.swift
  3. // Inhealth
  4. //
  5. // Created by weclouds on 2020/3/13.
  6. // Copyright © 2020 weclouds. All rights reserved.
  7. //
  8. import UIKit
  9. import IBAnimatable
  10. class IHFloorPicker: AnimatableModalViewController {
  11. var completion:((DropDownData)->Void)?
  12. var build:DropDownData?
  13. @IBOutlet weak var hotelNameLabel: UILabel!
  14. @IBOutlet weak var contentView: UIView!
  15. var buttonArr :[UIButton]? = [UIButton]()
  16. var buildList:[DropDownData]?{
  17. didSet{
  18. self.contentView.removeSubviews()
  19. self.contentView.addSubview(self.buttonView)
  20. self.buttonView.frame = self.contentView.bounds
  21. self.buttonView.reloadData()
  22. }
  23. }
  24. lazy var buttonView: IHButtonView = {
  25. let buttonView = IHButtonView()
  26. buttonView.delegate = self
  27. return buttonView
  28. }()
  29. var hotelName : String?{
  30. didSet{
  31. self.hotelNameLabel.text = self.hotelName
  32. }
  33. }
  34. override func viewDidLoad() {
  35. super.viewDidLoad()
  36. }
  37. @IBAction func close(_ sender: Any) {
  38. self.dismiss(animated: true, completion: nil)
  39. }
  40. @IBAction func save(_ sender: Any) {
  41. if let block = self.completion {
  42. block(self.build ?? self.buildList![0])
  43. }
  44. self.dismiss(animated: true, completion: nil)
  45. }
  46. }
  47. extension IHFloorPicker:IHButtonViewDelegate{
  48. func numberofItem(in buttonView: IHButtonView) -> Int {
  49. return self.buildList?.count ?? 0
  50. }
  51. func buttonView(_ buttonView: IHButtonView, titleFor item: Int) -> String {
  52. return self.buildList![item].name!
  53. }
  54. func buttonView(_ buttonView: IHButtonView, didSelected item: Int) {
  55. log.debug(self.buildList![item].name!)
  56. self.build = self.buildList![item]
  57. }
  58. }