CommunityNavigationBarView.swift 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. //
  2. // CommunityNavigationBarView.swift
  3. // RainbowPlanet
  4. //
  5. // Created by 南鑫林 on 2019/6/12.
  6. // Copyright © 2019 RainbowPlanet. All rights reserved.
  7. //
  8. import UIKit
  9. class CommunityNavigationBarView: BaseView {
  10. typealias SearchClosure = () -> Void
  11. var searchClosure:SearchClosure?
  12. override func setupViews() {
  13. addSubview(leftButton)
  14. addSubview(rightButton)
  15. addSubview(searchBgView)
  16. searchBgView.addSubview(searchIconImageView)
  17. searchBgView.addSubview(searchTextField)
  18. }
  19. override func setupLayouts() {
  20. leftButton.snp.makeConstraints { (make) in
  21. make.centerY.equalToSuperview()
  22. make.left.equalToSuperview().offset(16)
  23. make.size.equalTo(20)
  24. }
  25. rightButton.snp.makeConstraints { (make) in
  26. make.centerY.equalToSuperview()
  27. make.right.equalToSuperview().offset(-14)
  28. make.height.equalTo(20)
  29. make.width.greaterThanOrEqualTo(20)
  30. }
  31. rightButton.layoutButton(edgeInsetsStyle: ButtonEdgeInsetsStyle.left, imageTitleSpace: 2)
  32. searchBgView.snp.makeConstraints { (make) in
  33. make.centerY.equalToSuperview()
  34. make.height.equalTo(30)
  35. make.right.equalTo(rightButton.snp.left).offset(-10)
  36. make.left.equalTo(leftButton.snp.right).offset(10)
  37. }
  38. searchIconImageView.snp.makeConstraints { (make) in
  39. make.centerY.equalToSuperview()
  40. make.left.equalToSuperview().offset(15)
  41. make.size.equalTo(17)
  42. }
  43. searchTextField.snp.makeConstraints { (make) in
  44. make.centerY.equalToSuperview()
  45. make.left.equalTo(searchIconImageView.snp.right).offset(6)
  46. make.height.equalTo(30)
  47. }
  48. }
  49. lazy var leftButton: UIButton = {
  50. let leftButton = UIButton(type: UIButton.ButtonType.custom)
  51. leftButton.setImage(kImage(name: "navbar_address"), for: UIControl.State.normal)
  52. return leftButton
  53. }()
  54. lazy var rightButton: UIButton = {
  55. let rightButton = UIButton(type: UIButton.ButtonType.custom)
  56. rightButton.setImage(kImage(name: "navbar_class"), for: UIControl.State.normal)
  57. rightButton.setTitle("999", for: UIControl.State.normal)
  58. rightButton.setTitleColor(kFFA42FColor, for: UIControl.State.normal)
  59. rightButton.titleLabel?.font = kMediumFont16
  60. return rightButton
  61. }()
  62. private lazy var searchBgView: UIView = {
  63. let searchBgView = UIView()
  64. searchBgView.backgroundColor = kf7f8faColor
  65. searchBgView.cornerRadius = 15
  66. searchBgView.masksToBounds = true
  67. searchBgView.addTapGesture(1, target: self, action: #selector(searchClick))
  68. return searchBgView
  69. }()
  70. private lazy var searchIconImageView: UIImageView = {
  71. let searchIconImageView = UIImageView()
  72. searchIconImageView.image = kImage(name: "navbar_search")
  73. return searchIconImageView
  74. }()
  75. private lazy var searchTextField: UITextField = {
  76. let searchTextField = UITextField()
  77. searchTextField.placeholder = "大家都在搜"
  78. searchTextField.tintColor = kFFA42FColor
  79. searchTextField.textColor = k333333Color
  80. searchTextField.returnKeyType = .done
  81. searchTextField.font = kScaleRegularFont14
  82. searchTextField.borderStyle = .none
  83. searchTextField.isEnabled = false
  84. return searchTextField
  85. }()
  86. /// 搜索点击
  87. @objc func searchClick() {
  88. if let searchClosure = searchClosure {
  89. searchClosure()
  90. }
  91. }
  92. }