Today's Menu  Portugal
journal and plan nutrition
Y3GradientLabel.m
Go to the documentation of this file.
1 //
2 // Y3GradientLabel.m
3 // TodaysMenu
4 //
5 // Created by Don Zeek on 6/14/18.
6 // Copyright © 2018 net.dzeek.y2015.ios.portfolio. All rights reserved.
7 //
8 
9 #import "Y3GradientLabel.h"
10 
11 @implementation Y3GradientLabel
12 
14 + (Y3GradientLabel *)makeGradientLabel:(NSString *) caption withFrame: (CGRect) majorLabelFrame {
15  majorLabel = [[Y3GradientLabel alloc] initWithFrame:majorLabelFrame];
16 
17  [majorLabel setText:@"hey"];
18  UIFont *expandedFont = [UIFont fontWithName:@"Verdana-Bold" size:18.0];
19  [majorLabel setFont:expandedFont];
20 
21  [majorLabel setTextAlignment:NSTextAlignmentCenter];
22  [majorLabel setBackgroundColor:[UIColor colorWithHue:0.23 saturation:0.9 brightness:1.0 alpha:1.0]];
23 
24  majorLabel.layer.cornerRadius = 8;
25  majorLabel.layer.borderColor = [[UIColor blackColor] CGColor];
26  majorLabel.layer.borderWidth = 3.0;
27 
28  majorLabel.clipsToBounds = YES;
29 
30  CAGradientLayer *gradientLayer = [self makeGradientLayer:NO];
31  [majorLabel.layer addSublayer:gradientLayer];
32  return majorLabel;
33 }
34 
35 + (CAGradientLayer *) makeGradientLayer:(Boolean) status
36 {
37 
38  CAGradientLayer *gradientLayer = [CAGradientLayer layer];
39  CGRect overFlowBounds = majorLabel.layer.bounds;
40  overFlowBounds.size.height -= 2.0;
41  gradientLayer.frame = overFlowBounds;
42 
43  if (status) {
44  gradientLayer.colors = [NSArray arrayWithObjects:
45  (id)[UIColor colorWithWhite:0.4f alpha:0.5f].CGColor,
46  (id)[UIColor colorWithWhite:1.0f alpha:0.1f].CGColor,
47  nil];
48  } else {
49  gradientLayer.colors = [NSArray arrayWithObjects:
50  (id)[UIColor colorWithWhite:1.0f alpha:0.1f].CGColor,
51  (id)[UIColor colorWithWhite:0.4f alpha:0.5f].CGColor,
52  nil];
53  }
54 
55  gradientLayer.locations = [NSArray arrayWithObjects:
56  [NSNumber numberWithFloat:0.0f],
57  [NSNumber numberWithFloat:1.0f],
58  nil];
59 
60  gradientLayer.cornerRadius = 6; // refillLabel.layer.cornerRadius;
61 
62  return gradientLayer;
63 }
64 
65 /*
66 // Only override drawRect: if you perform custom drawing.
67 // An empty implementation adversely affects performance during animation.
68 - (void)drawRect:(CGRect)rect {
69  // Drawing code
70 }
71 */
72 
73 @end
static Y3GradientLabel * majorLabel
CAGradientLayer * makeGradientLayer:(Boolean status)