博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS-加载数据的实现-MJRefresh
阅读量:7059 次
发布时间:2019-06-28

本文共 5905 字,大约阅读时间需要 19 分钟。

使用CocoaPods加载三方库:

pod 'MJRefresh'

 

MJRefresh类结构图:

 

具体实现方法和效果图:

  • The drop-down refresh 01-Default

    self.tableView.header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{   //Call this Block When enter the refresh status automatically }];或// Set the callback(Once you enter the refresh status,then call the action of target,that is call [self loadNewData])self.tableView.header = [MJRefreshNormalHeader headerWithRefreshingTarget:self refreshingAction:@selector(loadNewData)];// Enter the refresh status immediately[self.tableView.header beginRefreshing];

  • The drop-down refresh 02-Animation image

    // Set the callback(一Once you enter the refresh status,then call the action of target,that is call [self loadNewData])MJRefreshGifHeader *header = [MJRefreshGifHeader headerWithRefreshingTarget:self refreshingAction:@selector(loadNewData)];// Set the ordinary state of animated images[header setImages:idleImages forState:MJRefreshStateIdle];// Set the pulling state of animated images(Enter the status of refreshing as soon as loosen)[header setImages:pullingImages forState:MJRefreshStatePulling];// Set the refreshing state of animated images[header setImages:refreshingImages forState:MJRefreshStateRefreshing];// Set headerself.tableView.mj_header = header;

  • The drop-down refresh 03-Hide the time

    // Hide the timeheader.lastUpdatedTimeLabel.hidden = YES;

  • The drop-down refresh 04-Hide status and time

    // Hide the timeheader.lastUpdatedTimeLabel.hidden = YES;// Hide the statusheader.stateLabel.hidden = YES;

  • The drop-down refresh 05-DIY title

    // Set title[header setTitle:@"Pull down to refresh" forState:MJRefreshStateIdle];[header setTitle:@"Release to refresh" forState:MJRefreshStatePulling];[header setTitle:@"Loading ..." forState:MJRefreshStateRefreshing];// Set fontheader.stateLabel.font = [UIFont systemFontOfSize:15];header.lastUpdatedTimeLabel.font = [UIFont systemFontOfSize:14];// Set textColorheader.stateLabel.textColor = [UIColor redColor];header.lastUpdatedTimeLabel.textColor = [UIColor blueColor];

  • The drop-down refresh 06-DIY the control of refresh

    self.tableView.mj_header = [MJDIYHeader headerWithRefreshingTarget:self refreshingAction:@selector(loadNewData)];// Implementation reference to MJDIYHeader.h和MJDIYHeader.m

  • The pull to refresh 01-Default

    self.tableView.mj_footer = [MJRefreshAutoNormalFooter footerWithRefreshingBlock:^{    //Call this Block When enter the refresh status automatically}];或// Set the callback(Once you enter the refresh status,then call the action of target,that is call [self loadMoreData])self.tableView.mj_footer = [MJRefreshAutoNormalFooter footerWithRefreshingTarget:self refreshingAction:@selector(loadMoreData)];

  • The pull to refresh 02-Animation image

    // Set the callback(Once you enter the refresh status,then call the action of target,that is call [self loadMoreData])MJRefreshAutoGifFooter *footer = [MJRefreshAutoGifFooter footerWithRefreshingTarget:self refreshingAction:@selector(loadMoreData)];// Set the refresh image[footer setImages:refreshingImages forState:MJRefreshStateRefreshing];// Set footerself.tableView.mj_footer = footer;

  • The pull to refresh 03-Hide the title of refresh status

    // Hide the title of refresh statusfooter.refreshingTitleHidden = YES;// If does have not above method,then use footer.stateLabel.hidden = YES;

  • The pull to refresh 04-All loaded

    //Become the status of NoMoreData[footer noticeNoMoreData];

  • The pull to refresh 05-DIY title

    // Set title[footer setTitle:@"Click or drag up to refresh" forState:MJRefreshStateIdle];[footer setTitle:@"Loading more ..." forState:MJRefreshStateRefreshing];[footer setTitle:@"No more data" forState:MJRefreshStateNoMoreData];// Set fontfooter.stateLabel.font = [UIFont systemFontOfSize:17];// Set textColorfooter.stateLabel.textColor = [UIColor blueColor];

  • The pull to refresh 06-Hidden After loaded

    //Hidden current control of the pull to refreshself.tableView.mj_footer.hidden = YES;

  • The pull to refresh 07-Automatic back of the pull01

    self.tableView.mj_footer = [MJRefreshBackNormalFooter footerWithRefreshingTarget:self refreshingAction:@selector(loadMoreData)];

  • The pull to refresh 08-Automatic back of the pull02

    MJRefreshBackGifFooter *footer = [MJRefreshBackGifFooter footerWithRefreshingTarget:self refreshingAction:@selector(loadMoreData)];// Set the normal state of the animated image[footer setImages:idleImages forState:MJRefreshStateIdle];//  Set the pulling state of animated images(Enter the status of refreshing as soon as loosen)[footer setImages:pullingImages forState:MJRefreshStatePulling];// Set the refreshing state of animated images[footer setImages:refreshingImages forState:MJRefreshStateRefreshing];// Set footerself.tableView.mj_footer = footer;

  • The pull to refresh 09-DIY the control of refresh(Automatic refresh)

    self.tableView.mj_footer = [MJDIYAutoFooter footerWithRefreshingTarget:self refreshingAction:@selector(loadMoreData)];// Implementation reference to MJDIYAutoFooter.h和MJDIYAutoFooter.m

  • The pull to refresh 10-DIY the control of refresh(Automatic back)

    self.tableView.mj_footer = [MJDIYBackFooter footerWithRefreshingTarget:self refreshingAction:@selector(loadMoreData)];// Implementation reference to MJDIYBackFooter.h和MJDIYBackFooter.m

  • UICollectionView01-The pull and drop-down refresh

    // The drop-down refreshself.collectionView.mj_header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{   //Call this Block When enter the refresh status automatically }];// The pull to refreshself.collectionView.mj_footer = [MJRefreshAutoNormalFooter footerWithRefreshingBlock:^{   //Call this Block When enter the refresh status automatically}];

  • UIWebView01-The drop-down refresh

    //Add the control of The drop-down refreshself.webView.scrollView.mj_header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{   //Call this Block When enter the refresh status automatically}];

文章来源:

 

转载于:https://www.cnblogs.com/xujinzhong/p/8676516.html

你可能感兴趣的文章
Windows和Mac下安装Beautiful Soup
查看>>
Mac 配置android环境变量
查看>>
SkyLine二次开发——解决在web页面启动时自动运行TerraExplorer的问题
查看>>
约瑟夫环(Josehpuse)的模拟
查看>>
CSS小技巧
查看>>
正则匹配 
查看>>
shell 读取文件
查看>>
给视图添加阴影
查看>>
数组2
查看>>
在django中,执行原始sql语句
查看>>
配置eclipse使能打开当前文件所在目录
查看>>
Repeater内RadioButton.GroupName失效
查看>>
【算法学习笔记】17.暴力求解法05 隐式图搜索1 迭代加深搜索 埃及分数
查看>>
如何高效利用GitHub
查看>>
html中特殊符号
查看>>
X-Frame-Options,X-XSS-Protection,X-Content-Type-Options
查看>>
Android 下的 USB HID 设备读写
查看>>
CSV文件转JSON
查看>>
Android Context类
查看>>
ztree 根据id选中某一点且触发当前点的click事件
查看>>