Skip to content

弹簧、橡皮筋下拉刷新控件,类似QQ下拉刷新效果,同时支持其他样式

License

Notifications You must be signed in to change notification settings

targetcloud/TGRefreshOC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TGRefreshOC

弹簧、橡皮筋下拉刷新控件,类似QQ下拉刷新控件,但比QQ 更强,同时支持其他样式,目前总共2种样式,后续不断添加中...

Build License MIT Platform Cocoapod

Swift Version

https://github.com/targetcloud/TGRefreshSwift

Recently Updated

  • 0.1.3 增加ignoreScrollViewContentInsetTop属性
  • 0.1.2 增加回显信息的渐显与渐隐时间属性设置
  • 0.1.1 优化并增强容错设计处理
  • 0.1.0 去掉了计时器,提高了性能,同时增加了容错性设计处理

Features

  • 支持链式编程配置,程序员的最爱
  • 支持两种刷新结果提示
  • 支持QQ和Normal两种下拉刷新样式
  • 支持contentInset
  • 支持Cocoapods
  • 支持MJRefresh到TGRefresh风格切换,只需要把mj_header改为tg_header,改动2个字母即可
  • 支持4种配置方式,普通配置、一句话配置、高级配置、最优配置,推荐使用最优配置
  • 支持刷新结果回显配置
  • 超轻量级、使用超灵活、功能超强大
  • 用例丰富,快速上手

Usage

首先写上这一句(必须的)

#import <TGRefresh.h>

如果需要,在你的控制器中加上一句

self.automaticallyAdjustsScrollViewInsets=NO;

QQ效果

self.tableview.tg_header = [TGRefreshOC  refreshWithTarget:self action:@selector(doRefreshSenior) config:nil];

普通效果

    self.tableview.tg_header = [TGRefreshOC  refreshWithTarget:self action:@selector(doRefreshSenior) config:^(TGRefreshOC *refresh) {
        refresh.tg_kind(RefreshKindNormal);
    }];

更多配置,使用链式编程配置

    self.tableview.tg_header = [TGRefreshOC  refreshWithTarget:self action:@selector(doRefreshSenior) config:^(TGRefreshOC *refresh) {
        refresh.tg_refreshResultBgColor([[UIColor orangeColor] colorWithAlphaComponent:0.8])
        .tg_bgColor([UIColor colorWithWhite:0.8 alpha:1])
        .tg_refreshResultTextColor([UIColor whiteColor]);
    }];

开始刷新

[self.tableview.tg_header beginRefreshing];

(网络请求等情况得到数据后)结束刷新

[self.tableview.tg_header endRefreshing];

结束刷新时的回显

        self.tableview.tg_header.refreshResultStr = @"成功刷新数据来自回显信息”;
        [self.tableview.tg_header endRefreshing];

可以配置的属性

/** 类型,默认为QQ弹簧 皮筋效果 */
@property(nonatomic,assign) TGRefreshKind kind;
/** 背景色(在有contentInset时为scrollview等背景色) */
@property(nonatomic,strong) UIColor * bgColor;
/** 主题色(刷新文字颜色、ActivityIndicator颜色、橡皮筯颜色) */
@property(nonatomic,strong) UIColor * tinColor;
/** 垂直对齐,默认顶部 */
@property(nonatomic,assign) TGRefreshAlignment verticalAlignment;
/** 刷新成功时的提示文字 */
@property(nonatomic,copy) NSString * refreshSuccessStr;
/** 准备刷新时的提示文字 */
@property(nonatomic,copy) NSString * refreshNormalStr;
/** 即将刷新时的提示文字 */
@property(nonatomic,copy) NSString * refreshPullingStr;
/** 正在刷新时的提示文字 */
@property(nonatomic,copy) NSString * refreshingStr;
/** 更新结果的回显文字 */
@property(nonatomic,copy) NSString * refreshResultStr;
/** 更新结果的回显背景色 */
@property(nonatomic,strong) UIColor * refreshResultBgColor;
/** 更新结果的回显文字颜色 */
@property(nonatomic,strong) UIColor * refreshResultTextColor;
/** 更新结果的回显高度 */
@property(nonatomic,assign) CGFloat refreshResultHeight;
/** 自动改变透明度,默认已做优化 */
@property(nonatomic,assign) BOOL automaticallyChangeAlpha;
/** 回显时的渐显时间 0.1 ~ 2秒 默认0.5 */
@property(nonatomic,assign) CGFloat fadeinTime;
/** 回显时的渐隐时间 0.1 ~ 5秒 默认1.5 */
@property(nonatomic,assign) CGFloat fadeoutTime;
/** 忽略初始的InsetTop */
@property(nonatomic,assign) BOOL ignoreScrollViewContentInsetTop;

使用链式编程配置时,请在所有属性前加tg_前缀即可

更多使用配置组合效果请下载本项目或fork本项目查看

Installation

  • 下载并拖动TGRefreshOC到你的工程中,只需要拖动包含TGRefresh.h这一文件的目录即可

  • Cocoapods

pod 'TGRefreshOC'

Reference

运行效果

demo中的弹簧效果

demo中的Normal效果

如果你觉得赞,请Star

About

弹簧、橡皮筋下拉刷新控件,类似QQ下拉刷新效果,同时支持其他样式

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published