// // CGXRefreshBackFooter.m // CGXVerticalMenuView-OC // // Created by CGX on 2018/05/01. // Copyright © 2019 CGX. All rights reserved. // #import "CGXRefreshBackFooter.h" @interface CGXRefreshBackFooter() @property (weak, nonatomic) UILabel *label; @end @implementation CGXRefreshBackFooter #pragma mark - 重写方法 #pragma mark 在这里做一些初始化配置(比如添加子控件) - (void)prepare { [super prepare]; // 设置控件的高度 self.mj_h = 60; // 添加label UILabel *label = [[UILabel alloc] init]; label.textColor = [UIColor colorWithRed:1.0 green:0.5 blue:0.0 alpha:1.0]; label.font = [UIFont boldSystemFontOfSize:16]; label.textAlignment = NSTextAlignmentCenter; [self addSubview:label]; self.label = label; } - (void)setTitle:(NSString *)title { _title = title; self.label.text = self.title; } #pragma mark 在这里设置子控件的位置和尺寸 - (void)placeSubviews { [super placeSubviews]; self.label.frame = self.bounds; } #pragma mark 监听scrollView的contentOffset改变 - (void)scrollViewContentOffsetDidChange:(NSDictionary *)change { [super scrollViewContentOffsetDidChange:change]; } #pragma mark 监听scrollView的contentSize改变 - (void)scrollViewContentSizeDidChange:(NSDictionary *)change { [super scrollViewContentSizeDidChange:change]; } #pragma mark 监听scrollView的拖拽状态改变 - (void)scrollViewPanStateDidChange:(NSDictionary *)change { [super scrollViewPanStateDidChange:change]; } #pragma mark 监听控件的刷新状态 - (void)setState:(MJRefreshState)state { MJRefreshCheckState; switch (state) { case MJRefreshStateIdle: self.label.text = @"继续上拉"; break; case MJRefreshStatePulling: self.label.text = @"继续上拉"; break; case MJRefreshStateRefreshing: self.label.text = @"继续上拉"; break; case MJRefreshStateNoMoreData: self.label.text = @"继续上拉"; default: break; } self.label.text = self.title; } #pragma mark 监听拖拽比例(控件被拖出来的比例) - (void)setPullingPercent:(CGFloat)pullingPercent { [super setPullingPercent:pullingPercent]; // 1.0 0.5 0.0 // 0.5 0.0 0.5 // CGFloat red = 1.0 - pullingPercent * 0.5; // CGFloat green = 0.5 - 0.5 * pullingPercent; // CGFloat blue = 0.5 * pullingPercent; // self.label.textColor = [UIColor colorWithRed:red green:green blue:blue alpha:1.0]; } @end