如何让提示文字居中,图片变成动画
一. 新旧版本比较
旧版本使用说明
#import "UIScrollView+MJRefresh.h" /** MJ友情提示: 1. 添加头部控件的方法 [self.tableView addHeaderWithTarget:self action:@selector(headerRereshing)]; 或者 [self.tableView addHeaderWithCallback:^{ }]; 2. 添加尾部控件的方法 [self.tableView addFooterWithTarget:self action:@selector(footerRereshing)]; 或者 [self.tableView addFooterWithCallback:^{ }]; 3. 可以在MJRefreshConst.h和MJRefreshConst.m文件中自定义显示的文字内容和文字颜色 4. 本框架兼容iOS6\\\\iOS7,iPhone\\\\iPad横竖屏 5.自动进入刷新状态 1> [self.tableView headerBeginRefreshing]; 2> [self.tableView footerBeginRefreshing]; 6.结束刷新 1> [self.tableView headerEndRefreshing]; 2> [self.tableView footerEndRefreshing]; */
新版本介绍
version= '3.1.5',2016-06-13
1.添加前缀mj_
;
2.支持国际化zh-Hans(简体中文)
,zh-Hant(繁体中文)
,en(英文)
3.可以自定义刷新控件
4.更加自由化,支持文字,图片,GIF等混合搭配(有点扯
)最新的MJRefresh的GitHub仓库截图如
图mj-01
:
让文字居中可以用下面这个方法,修改他的中心点 #pragma mark -UIScrollViewDelegate -(void)scrollViewDidScroll:(UIScrollView *)scrollView{
- if (scrollView.tag == 131420) {
- MJRefreshBackNormalFooter *footView = (MJRefreshBackNormalFooter *)_tableView.mj_footer;
- footView.stateLabel.frame = CGRectMake(scrollView.contentOffset.x, footView.stateLabel.frame.origin.y, footView.stateLabel.frame.size.width, footView.stateLabel.frame.size.height);
- footView.arrowView.center = CGPointMake(footView.stateLabel.center.x - 100, footView.arrowView.center.y);
- footView.loadingView.center = CGPointMake(footView.stateLabel.center.x - 100, footView.arrowView.center.y);
- MJRefreshNormalHeader *headView = (MJRefreshNormalHeader *)_tableView.mj_header;
- headView.stateLabel.frame = CGRectMake(scrollView.contentOffset.x, headView.stateLabel.frame.origin.y, headView.stateLabel.frame.size.width, headView.stateLabel.frame.size.height);
- headView.arrowView.center = CGPointMake(headView.stateLabel.center.x - 100, headView.arrowView.center.y);
- headView.loadingView.center = CGPointMake(headView.stateLabel.center.x - 100, headView.arrowView.center.y);
- headView.lastUpdatedTimeLabel.center = CGPointMake(headView.stateLabel.center.x, headView.lastUpdatedTimeLabel.center.y);
- }
- }
说明:最好参考MJDIYHeader.m来学习,就不一一截图说明
① 首先创建一个类(譬如MJDIYHeader),继承自MJRefreshHeader;
② 重写相关方法 【 在MJRefreshComponent.h
中有下面的提示】
#pragma mark - 交给子类们去实现 /** 初始化 */ #pragma mark 在这里做一些初始化配置(比如添加子控件) -(void)prepare NS_REQUIRES_SUPER; /** 摆放子控件frame */ #pragma mark 在这里设置子控件的位置和尺寸 -(void)placeSubviews NS_REQUIRES_SUPER; /** 当scrollView的contentOffset发生改变的时候调用 */ -(void)scrollViewContentOffsetDidChange:(NSDictionary *)change NS_REQUIRES_SUPER; /** 当scrollView的contentSize发生改变的时候调用 */ -(void)scrollViewContentSizeDidChange:(NSDictionary *)change NS_REQUIRES_SUPER; /** 当scrollView的拖拽状态发生改变的时候调用 */ -(void)scrollViewPanStateDidChange:(NSDictionary *)change NS_REQUIRES_SUPER;