文章来源:淘论文网   发布者: 毕业设计   浏览量: 40



还可以点击去查询以下关键词:
[多种]    [可选]    [样式]    [下拉]    [刷新]    [解决]    [MJRefreshbug]    [多种可选样式的下拉刷新,解决MJRefreshbug。]   

概述

高度可扩展、自定义、多样式的刷新框架。

Features 特点   描述  
支持多样式选择与自定义   KafkaRefresh内置多种刷新样式,且可对样式进行自定义。扩展接口可让开发者集成更多丰富的UI效果。  
非刷新状态自动隐藏   能避免开发者手动调整contentInset后刷新控件的出现而影响视觉体验;最常见的情况时,开题报告,不存在数据时,底部的刷新的控件未隐藏,使用KafkaRefresh能避免该问题。  
刷新结束时滑动抗抖动   当控件结束刷新,UIScrollView如果处于滑动状态,KafkaRefresh将根据刷新控件此时是否显示控制UIScrollView的contntOffset  
支持设置触发刷新的偏移阀值   偏移阀值可自定义,自我把控触发刷新的条件;偏移阀值是基于控件高度的倍数,开题报告,且必须大于1.0;否则无效。  
支持全局配置   KafkaRefreshDefaults支持全局设置样式  
支持进度回调   实时回调拖拽的偏移比例,对于扩展接口,可根据进度调整动画  
自适应系统调整与手动调整   --  
解决刷新状态分组视图悬停问题   当UITableView优多个分组,且分组视图的高度非0时,刷新状态将出现半空悬停的效果。从EGO以来,尝试解决该问题的刷新框架始于MJRefresh,但可惜的是,MJRefresh并未完美解决该问题(本质是因为contentOffset并非连续变化)。KafkaRefresh即使在刷新状态快速滑动,也能避开该问题的出现。  
文档覆盖率100%   可在头文件中查看所有方法和类的使用  
支持横竖屏切换自适应   无需在横竖屏切换时考虑刷新问题  
iOS 7+   支持iOS 7以上系统。包括iPhone X  
Installation

CocoaPods

pod 'KafkaRefresh'Usage1.引入头文件 #import 'KafkaRefresh.h' 2.初始化控件

方式一

[self.tableView bindRefreshStyle:KafkaRefreshStyleAnimatableArrow fillColor:MainColor atPosition:KafkaRefreshPositionHeader refreshHanler:^{ //....... }]; [self.tableView bindRefreshStyle:KafkaRefreshStyleAnimatableArrow fillColor:MinorColor atPosition:KafkaRefreshPositionFooter refreshHanler:^{ //..... }];

方式二

KafkaArrowHeader * arrow = [[KafkaArrowHeader alloc] init]; arrow.refreshHandler = ^{ //..... }; self.tableView.headRefreshControl = arrow;

方式三 全局配置

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { [[KafkaRefreshDefaults standardRefreshDefaults] setHeaderDefaultStyle:KafkaRefreshStyleAnimatableRing]; return YES; } [self.tableView bindDefaultRefreshStyleAtPosition:KafkaRefreshPositionHeader refreshHanler:^{ //..... }]; 3.手动触发刷新 [self.tableView.headRefreshControl beginRefreshing]; [self.tableView.footRefreshControl beginRefreshing];4.结束刷新 [self.tableView.headRefreshControl endRefreshing]; [self.tableView.footRefreshControl endRefreshing];Customize

以KafkaheadRefreshControl为例:

#import 'KafkaheadRefreshControl.h' @interface CustomHeader : KafkafootRefreshControl @end

*
.m

@implementation CustomHeader - (void)setupProperties{ [super setupProperties]; //初始化属性 } - (void)kafkaDidScrollWithProgress:(CGFloat)progress max:(const CGFloat)max{ //进度回调 } - (void)kafkaRefreshStateDidChange:(KafkaRefreshState)state{ [super kafkaRefreshStateDidChange:state]; switch (state) { case KafkaRefreshStateNone:{ break; } case KafkaRefreshStateScrolling:{ break; } case KafkaRefreshStateReady:{ break; } case KafkaRefreshStateRefreshing:{ break; } case KafkaRefreshStateWillEndRefresh:{ break; } } } @endCommunication

如需要帮助,请邮件 <xorshine@icloud.com>或者wechat:Xiangxh1015;

如遇到bug,请在Github open an issue,烦请您提供重现步骤;

个人精力有限,Kafka提供的回调接口足够去增加更丰富的UI效果,很欢迎您一起参与,并提交pull request;

如果您对该库有更好的设计思路,请务必e-mail或wechat。

License

KafkaRefresh利用MIT开源协议。


这里还有:


还可以点击去查询:
[多种]    [可选]    [样式]    [下拉]    [刷新]    [解决]    [MJRefreshbug]    [多种可选样式的下拉刷新,解决MJRefreshbug。]   

请扫码加微信 微信号:sj52abcd


下载地址: http://www.taolw.com/down/2858.docx
  • 上一篇:超强自定毕业设计tabBar
  • 下一篇:基于Swift的App端和定制服务器端双端项目