@@ -9,51 +9,51 @@ import Foundation
99
1010@available ( iOS 10 . 0 , * )
1111class DayButton : UIButton {
12- let todayIconImage : UIImage ? = UIImage ( named: " today_icon " , in: Bundle ( for: DayButton . self) , compatibleWith: nil )
13- let selectedDayColor : UIColor = Useful . getUIColor ( 55 , 137 , 220 )
14- var beforeTextColor : UIColor = Useful . getUIColor ( 51 , 51 , 51 )
15- var todayIconImageView : UIImageView !
16-
17- override init ( frame: CGRect ) {
18- super. init ( frame: frame)
19-
20- setupTodayIcon ( )
21- setupAutoLayout ( )
22-
23- self . todayIconImageView. isHidden = true
24- }
25-
26- required init ? ( coder aDecoder: NSCoder ) {
27- super. init ( coder: aDecoder)
28- }
29-
30- override var isHighlighted : Bool {
31- willSet {
32- beforeTextColor = titleLabel? . textColor ?? Useful . getUIColor ( 51 , 51 , 51 )
33- }
34-
35- didSet {
36- backgroundColor = isHighlighted ? selectedDayColor : UIColor . white
37- titleLabel? . textColor = isHighlighted ? UIColor . white : beforeTextColor
38- }
39- }
40-
41- func setupTodayIcon( ) {
42- todayIconImageView = UIImageView . init ( )
43- todayIconImageView. image = todayIconImage
44-
45- self . addSubview ( todayIconImageView)
46- }
47-
48- func setupAutoLayout( ) {
49- self . titleLabel? . translatesAutoresizingMaskIntoConstraints = false
50- self . todayIconImageView. translatesAutoresizingMaskIntoConstraints = false
51-
52- self . titleLabel? . centerXAnchor. constraint ( equalTo: self . centerXAnchor) . isActive = true
53- self . titleLabel? . centerYAnchor. constraint ( equalTo: self . centerYAnchor) . isActive = true
54- self . todayIconImageView. centerXAnchor. constraint ( equalTo: self . centerXAnchor) . isActive = true
55- self . todayIconImageView. topAnchor. constraint ( equalTo: ( self . titleLabel? . bottomAnchor) !, constant: 2 ) . isActive = true
56- self . todayIconImageView. heightAnchor. constraint ( equalToConstant: 5 ) . isActive = true
57- self . todayIconImageView. widthAnchor. constraint ( equalTo: self . todayIconImageView. heightAnchor) . isActive = true
58- }
12+ let todayIconImage : UIImage ? = UIImage ( named: " today_icon " , in: Bundle ( for: DayButton . self) , compatibleWith: nil )
13+ let selectedDayColor : UIColor = Useful . getUIColor ( 55 , 137 , 220 )
14+ var beforeTextColor : UIColor = Useful . getUIColor ( 51 , 51 , 51 )
15+ var todayIconImageView : UIImageView !
16+
17+ override init ( frame: CGRect ) {
18+ super. init ( frame: frame)
19+
20+ setupTodayIcon ( )
21+ setupAutoLayout ( )
22+
23+ self . todayIconImageView. isHidden = true
24+ }
25+
26+ required init ? ( coder aDecoder: NSCoder ) {
27+ super. init ( coder: aDecoder)
28+ }
29+
30+ override var isHighlighted : Bool {
31+ willSet {
32+ beforeTextColor = titleLabel? . textColor ?? Useful . getUIColor ( 51 , 51 , 51 )
33+ }
34+
35+ didSet {
36+ backgroundColor = isHighlighted ? selectedDayColor : UIColor . white
37+ titleLabel? . textColor = isHighlighted ? UIColor . white : beforeTextColor
38+ }
39+ }
40+
41+ func setupTodayIcon( ) {
42+ todayIconImageView = UIImageView . init ( )
43+ todayIconImageView. image = todayIconImage
44+
45+ self . addSubview ( todayIconImageView)
46+ }
47+
48+ func setupAutoLayout( ) {
49+ self . titleLabel? . translatesAutoresizingMaskIntoConstraints = false
50+ self . todayIconImageView. translatesAutoresizingMaskIntoConstraints = false
51+
52+ self . titleLabel? . centerXAnchor. constraint ( equalTo: self . centerXAnchor) . isActive = true
53+ self . titleLabel? . centerYAnchor. constraint ( equalTo: self . centerYAnchor) . isActive = true
54+ self . todayIconImageView. centerXAnchor. constraint ( equalTo: self . centerXAnchor) . isActive = true
55+ self . todayIconImageView. topAnchor. constraint ( equalTo: ( self . titleLabel? . bottomAnchor) !, constant: 2 ) . isActive = true
56+ self . todayIconImageView. heightAnchor. constraint ( equalToConstant: 5 ) . isActive = true
57+ self . todayIconImageView. widthAnchor. constraint ( equalTo: self . todayIconImageView. heightAnchor) . isActive = true
58+ }
5959}
0 commit comments