// // RAHomeHeaderView.m // Apex And Drivers // // Created by Jack on 2018/9/10. // Copyright © 2018年 USAI. All rights reserved. // #import "RAHomeHeaderView.h" @interface RAHomeHeaderView () { CAGradientLayer *_gradientLayer; } @property (nonatomic,strong) IBOutlet UILabel *NewCountLabel; @property (nonatomic,strong) IBOutlet UILabel *ProcessingCountLabel; @property (nonatomic,strong) IBOutlet UILabel *FinishCountLabel; @property (nonatomic,strong) IBOutlet UIView *backgroundView; @property (nonatomic,strong) IBOutlet UIButton *signoutBtn; @property (nonatomic,strong) IBOutlet UIButton *settingBtn; @property (nonatomic,strong) IBOutlet UIButton *availableBtn; @property (nonatomic,strong) IBOutlet UILabel *availableTitleLabel; @property (nonatomic,strong) IBOutlet UIButton *messageBtn; @property (nonatomic,strong) IBOutlet UIImageView *messageNewFlagView; @property (nonatomic,strong) IBOutlet UIView *NewCountView; @property (nonatomic,strong) IBOutlet UIView *processingCountView; @property (nonatomic,strong) IBOutlet UIView *finishedCountView; @end @implementation RAHomeHeaderView + (instancetype)homeHeader { return [[[NSBundle mainBundle] loadNibNamed:@"HomeHeader" owner:nil options:nil] objectAtIndex:1]; } - (void)awakeFromNib { [super awakeFromNib]; self.NewOrderCount = self.ProcessingOrderCount = self.FinishOrderCount = 0; self.availabel = self.existNewMessage = NO; UITapGestureRecognizer *newTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(newOrderClick:)]; [self.NewCountView addGestureRecognizer:newTap]; UITapGestureRecognizer *proTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(processingOrderClick:)]; [self.processingCountView addGestureRecognizer:proTap]; UITapGestureRecognizer *finTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(finishedOrderClick:)]; [self.finishedCountView addGestureRecognizer:finTap]; _gradientLayer = [CAGradientLayer layer]; UIColor *orangeWhiteColor = ApexDriverOrangeWhiteColor; UIColor *orangeColor = ApexDriverOrangeColor; _gradientLayer.colors = @[(__bridge id)orangeColor.CGColor, (__bridge id)orangeWhiteColor.CGColor]; _gradientLayer.startPoint = CGPointMake(0, 0); _gradientLayer.endPoint = CGPointMake(1, 0); // _gradientLayer.locations = @[@0,@0.7,@0.95]; _gradientLayer.frame = self.backgroundView.bounds; [self.backgroundView.layer addSublayer:_gradientLayer]; } - (void)layoutSubviews { [super layoutSubviews]; _gradientLayer.frame = self.backgroundView.bounds; } - (void)setNewOrderCount:(NSInteger)NewOrderCount { _NewOrderCount = NewOrderCount; self.NewCountLabel.text = [self _textFromCount:_NewOrderCount]; } - (void)setProcessingOrderCount:(NSInteger)ProcessingOrderCount { _ProcessingOrderCount = ProcessingOrderCount; self.ProcessingCountLabel.text = [self _textFromCount:_ProcessingOrderCount]; } - (void)setFinishOrderCount:(NSInteger)FinishOrderCount { _FinishOrderCount = FinishOrderCount; self.FinishCountLabel.text = [self _textFromCount:_FinishOrderCount]; } - (NSString *)_textFromCount:(NSInteger)count { NSString *str = nil; if (count >= 0) { str = [NSString stringWithFormat:@"%lu",count]; } return str; } - (void)setAvailabel:(BOOL)availabel { _availabel = availabel; self.availableBtn.selected = !_availabel; self.availableTitleLabel.text = _availabel ? NSLocalizedString(@"Available", nil) : NSLocalizedString(@"Unavailable", nil); } - (void)setExistNewMessage:(BOOL)existNewMessage { _existNewMessage = existNewMessage; self.messageBtn.selected = _existNewMessage; self.messageNewFlagView.hidden = !_existNewMessage; } #pragma mark - Action - (IBAction)signoutBtnClick:(id)sender { if (self.delegate && [self.delegate respondsToSelector:@selector(signoutClick:)]) { [self.delegate signoutClick:sender]; } } - (IBAction)settingBtnClick:(id)sender { if (self.delegate && [self.delegate respondsToSelector:@selector(settingClick:)]) { [self.delegate settingClick:sender]; } } - (IBAction)availableBtnClick:(id)sender { if (self.delegate && [self.delegate respondsToSelector:@selector(availableClick:)]) { [self.delegate availableClick:sender]; } } - (IBAction)messageBtnClick:(id)sender { if (self.delegate && [self.delegate respondsToSelector:@selector(messageClick:)]) { [self.delegate messageClick:sender]; } } - (void)newOrderClick:(id)sender { if (self.delegate && [self.delegate respondsToSelector:@selector(newOrderClick:)]) { [self.delegate newOrderClick:self.NewCountView]; } } - (void)processingOrderClick:(id)sender { if (self.delegate && [self.delegate respondsToSelector:@selector(processingOrderClick:)]) { [self.delegate processingOrderClick:self.processingCountView]; } } - (void)finishedOrderClick:(id)sender { if (self.delegate && [self.delegate respondsToSelector:@selector(finishedOrderClick:)]) { [self.delegate finishedOrderClick:self.finishedCountView]; } } @end