16
UILa
bel *_lastUpdatedLabel;
17
UILabel *_statusLabel;
18
CALayer *_arrowImage;
19
UIActivityIndicatorView *_activityView;
20
21
}
22
23
@property(nonatomic,assign)
id
<EGORefreshTableHeaderDelegate> delegate;
24
25
- (id)initWithFrame:(CGRect)frame arrowImageName:(NSString
*)arrow textColor:(UIColor *)textColor;
26
27
- (void)refreshLastUpdatedDate;
28
-
(void)egoRefreshScrollViewDidScroll:(UIScrollView
*)scrollView;
29
- (void)egoRefreshScrollViewDidEndDragging:(UIScrollView
*)scrollView;
30
- (void)egoRefreshScrollViewDataSourceDidFinishedLoading:
(UIScrollView *)scrollView;
31
32
@end
33
//定义协议方法
34
@protocol EGORefreshTableHeaderDelegate
35
//下拉的时候调用此方法
36
-
(void)egoRefreshTableHeaderDidTriggerRefresh:
(EGORefreshTableHeaderView*)view;
37
//判断刷新状态情况,正在刷新或者是没刷新
38
-
(BOOL)egoRefreshTableHeaderDataSourceIsLoading:
(EGORefreshTableHeaderView*)view;
39
@optional
40
//返回刷新时间,回调方法
41
- (NSDate*)egoRefreshTableHeaderDataSourceLastUpdated:
(EGORefreshTableHeaderView*)view;
42
@end
首先是定义了一个枚举类型
EGOPullRefreshState 表示当前我们操作在哪种状态下,有下拉
状态、正常状态、数据加载状态;
@protocol EGORefreshTableHeaderDelegate;表示声明有这个协议,该协议里面声明了一些
方法,只要其他的类遵循了这个协议(也就是遵循了它的规定),就可以去实现协议里面
方法,协议里的方法是留给遵循这个协议的类去实现的,也是留给外部实现接口;
找软件资料,就到一览软件文库