网上各种办法都试了,只有这种解决方法解决了我的问题,记录一下

通过延迟 1s后,再来请求接口

- (void)viewDidLoad {

[super viewDidLoad];

// Do any additional setup after loading the view.

self.currentPage = 1;

if (@available(iOS 11.0, *)) {

self.tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;

} else {

self.tableView.translatesAutoresizingMaskIntoConstraints = false;

}

[self addHeaderMJ];

[self addFooterMJ];

[self loadTopicDetailListWithLastID:@""];

}

#pragma mark - 懒加载 tableView

-(ZBS_YKZL_TableView *)tableView{

if (_tableView == nil) {

ZBS_YKZL_TableView *tableView = [ZBS_YKZL_TableView contentTableViewWithFrame:CGRectMake(0, 0, Screen_Width, Screen_Height-JYEStatusAndNavigationBarHeight64)];

[self.view addSubview:tableView];

_tableView = tableView;

}

return _tableView;

}

#pragma mark -刷新界面和加载更多

- (void)addHeaderMJ{

//下拉刷新

MJRefreshNormalHeader *header = [MJRefreshNormalHeader headerWithRefreshingTarget:self refreshingAction:@selector(refreshData:)];

[header setTitle:@"" forState:MJRefreshStateIdle];

[header setTitle:@"松开即刷新" forState:MJRefreshStatePulling];

[header setTitle:@"刷新中..." forState:MJRefreshStateRefreshing];

header.lastUpdatedTimeLabel.hidden = YES;

self.tableView.mj_header = header;

[self.tableView.mj_header beginRefreshing];

}

- (void)addFooterMJ{

//上拉加载

MJRefreshBackNormalFooter *footer = [MJRefreshBackNormalFooter footerWithRefreshingTarget:self refreshingAction:@selector(downloadNewData:)];

[footer setTitle:@"" forState:MJRefreshStateIdle];

[footer setTitle:@"松开即加载" forState:MJRefreshStatePulling];

[footer setTitle:@"加载中..." forState:MJRefreshStateRefreshing];

self.tableView.mj_footer = footer;

}

//刷新数据

- (void)refreshData:(MJRefreshNormalHeader *)header {

self.currentPage = 1;

if (self.modelListArray.count) {

[self.modelListArray removeAllObjects];

}

[header beginRefreshing];

[self performSelector:@selector(delayRefresh) withObject:nil afterDelay:1];

//    [self loadTopicDetailListWithLastID:@""];

}

-(void)delayRefresh{

[self loadTopicDetailListWithLastID:@""];

}

//加载数据

- (void)downloadNewData:(MJRefreshAutoNormalFooter *)footer {

self.currentPage++;

ZBS_YKZL_TableViewModel *model = [self.modelListArray lastObject];

NSString *lastID = model.ID;

[footer beginRefreshing];

[self loadTopicDetailListWithLastID:lastID];

}

--------------------------------------------------------------------------------------------

iOS gif图显示问题

转载:https://www.cnblogs.com/AliliWl/p/4895285.html

ios MJRefresh 上拉死循环刷新问题+git 图片的更多相关文章

  1. iOS MJRefresh上拉加载更多

    1.导入MJRefresh包 2.在类中引入:#import "MJRefresh.h" 3.添加footerView 添加加载更多的UI样式: MJRefreshAutoNorm ...

  2. iOS MJRefresh下拉、上拉刷新自定义以及系统详细讲解

    更新: MJRefresh 更新功能,默认根据数据来源 自动显示 隐藏footer,这个功能可以关闭 DoctorTableView.mj_footer.automaticallyHidden = N ...

  3. iOS MJRefresh下拉刷新(上拉加载)使用详解

    下拉刷新控件目前比较火的有好几种,本人用过MJRefresh 和 SVPullToRefresh,相对而言,前者比后者可定制化.拓展新都更高一点. 因此本文着重讲一下MJRefresh的简单用法. 导 ...

  4. MJRefresh(上拉加载下拉刷新)

    整理自:https://github.com/CoderMJLee/MJRefresh#%E6%94%AF%E6%8C%81%E5%93%AA%E4%BA%9B%E6%8E%A7%E4%BB%B6%E ...

  5. HBuilder/Mui开发ios使用上拉刷新导致滚动条无法使用的解决方法

    HBuilder/Mui开发的APP使用上拉刷新,当滚动到底部是会触发上拉刷新,加载更多数据.但是ios上确是一个坑,导致滚动条无法滚动. 解决方法 放弃Mui的上拉刷新,自己使用JS实现. var ...

  6. 【已解决】iOS11使用MJRefresh上拉加载结束tableView闪动、跳动的问题

    更新提示: [2018年11月20日更新] 经过放置在项目中运行发现,如果在快速滚动tableview的时候会在下面这行代码中崩溃(慢慢的滚动是没关系的-): CGFloat cellHeight = ...

  7. ios开发之--MJRefresh上拉加载的时候,tableview会向上偏移

    1,出现这种情况的原因: 这个应该是UITableView最大的改变.我们知道在iOS8引入Self-Sizing之后,我们可以通过实现estimatedRowHeight相关的属性来展示动态的内容, ...

  8. iOS开发之--iPhone X 适配:MJRefresh上拉加载适配

    问题如下图: 出现原因,phoneX系列手机下方多了34像素的工作区域,所以需要对x全系列手机坐下适配, 解决如下: self.tableView.mj_footer.ignoredScrollVie ...

  9. 关于ios手机上拉和下拉到底部和顶部的橡皮筋问题

    之前遇到一个问题,就是写了一个正常的移动端首页,底部是导航,上面的是内容,在安卓手机是页面滑动到底部的时候,不会再滑动的,但是问题就出现在ios手机中.页面正常布局是,导航是position:fixe ...

  10. iOS Safari 上加载的最大的图片尺寸

    做WAP端项目时发现, 写css代码显示图片, 却显示不出.或用canvas 来加载图片的某一部分的时候显示不出, 代码如下: background: url() no-repeat -1000px ...

随机推荐

  1. ubuntu fastdds安装

    0,虚拟机安装: 推荐安装ubuntu 20.ubuntu 22与VMware不兼容,存在无法与主机之间复制粘贴文件的问题. 1.虚拟机镜像下载,下载tdesktop版本: 中科大站点:https:/ ...

  2. win10 打开剪切板失败 拒绝访问 已解决!!

    问题 剪切板使用混乱,导致本地无法复制粘贴 解决办法 terminal运行echo off | clip

  3. ES 基础操作

    集群 健康值的三种状态 Green:所有索引的所有分片均可用 primary 和 replice 均可用. Yellow 至少有一个 replice不可以用, 但是所有的 primary 正常. Re ...

  4. vue项目打包后,自由修改配置如接口地址等

    背景描述: 项目打包后,如果想更换接口域名或者项目名称,就需要再次打包.但是这样子操作有点耗费时间.如果把这些配置写到一个文件中,然后在index.html文件中引入使用,这样子会大大提高工资效率,节 ...

  5. android系统源码编译报错问题分析处理--持续更新

    一.build/make/core/base_rules.mk:232: error: packages/services/Car/service: LOCAL_BUILT_MODULE and LO ...

  6. python34

    Python成员运算符 除了以上的一些运算符之外,Python还支持成员运算符,测试实例中包含了一系列的成员,包括字符串,列表或元组. 运算符 描述 实例 in 如果在指定的序列中找到值返回 True ...

  7. C# 两个list集合合并成一个,及升序降序

    C# List集合合并   在开发过程中.数组和集合的处理是最让我们担心.一般会用for or foreach 来处理一些操作.这里介绍一些常用的集合跟数组的操作函数.  首先举例2个集合A,B. L ...

  8. IIS管理器中远程管理其它web服务器上的IIS站点

    IIS管理器中远程管理其它web服务器上的IIS站点 当生产环境服务器和部署项目过多时, 就需要单独一台机器来统一管理这些项目, 部署配置如下: 环境:项目服务器5台,运维服务器1台 应用:由运维服务 ...

  9. 全链路压测SOP

    压测模型构建:人工 线上(大促)流量数据 (数据脱敏) 日常流量数据 业务方新的特性产生的变更数据 友商做过的事情 压测模型构建:自动 流程包括:录制-清洗-回放 (目前能做好的公司非常少) 压测标准 ...

  10. 用户警告:“importlib-metadata”版本与“setuptools”不兼容。升级importlib-metadata

    Warning: `importlib-metadata` version is incompatible with `setuptools` 解决方案:升级 importlib-metadata 版 ...