Blame view

Twear/Home/Cell/RecordHeaderView.swift 2.2 KB
75d24c15   yangbin   123
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
  //
  //  RecordHeaderView.swift
  //  Twear
  //
  //  Created by yangbin on 2021/12/17.
  //
  
  import UIKit
  import SnapKit
  
  class RecordHeaderView: UIView {
      
      var dateLabel = UILabel()
      var arrowImageView = UIImageView()
      var section: Int = 0
      var isShow: Bool = false
      var headerClosure: ((_ section: Int) -> ())?
      
      override init(frame: CGRect) {
          super.init(frame: frame)
          
      }
      
      init(section: Int, motion: MotionRecord) {
          super.init(frame: CGRect.zero)
          self.section = section
          self.isShow = motion.isShow
          self.dateLabel.text = motion.date
          backgroundColor = .white
          dateLabel.font = RegularFont(15)
          addSubview(dateLabel)
          dateLabel.snp.makeConstraints { make in
              make.left.equalToSuperview().offset(12)
              make.centerY.equalToSuperview()
          }
          
          arrowImageView.image = UIImage(named: isShow ? "arrow_down" : "arrow_right")
          addSubview(arrowImageView)
          arrowImageView.snp.makeConstraints { make in
              make.right.equalToSuperview().offset(-12)
              make.width.height.equalTo(13)
              make.centerY.equalToSuperview()
          }
          
          let lineView = UIView()
          lineView.backgroundColor = LineColor
          addSubview(lineView)
          lineView.snp.makeConstraints { make in
              make.left.equalToSuperview().offset(12)
              make.right.equalToSuperview().offset(-12)
              make.height.equalTo(0.5)
              make.bottom.equalToSuperview()
          }
          
          addGestureRecognizer(UITapGestureRecognizer(target: self, action: #selector(clickHeaderView(_:))))
      }
      
      @objc private func clickHeaderView(_ gestureRecognizer: UITapGestureRecognizer) {
          headerClosure?(section)
      }
      
      func rotateArrow(_ isShow: Bool) {
          if isShow {
              arrowImageView.image = UIImage(named: "arrow_down")
          }
          return
  //        UIView.animate(withDuration: 0.3) {
  //            self.arrowImageView.transform = isShow ? CGAffineTransform(rotationAngle: .pi/2) : .identity
  //        }
  
      }
      
      required init?(coder: NSCoder) {
          fatalError("init(coder:) has not been implemented")
      }
      
  }