iOS中第三方框架刷新

本文详细介绍了如何在iOS应用中实现下拉刷新和上拉加载更多的功能,包括引入相关库、配置视图、监听状态变化及通过代码控制刷新状态的全过程。同时提供了自定义控件显示文字的方法,并强调了内部限制控件宽高的技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

0.先加入主头文件

#import "MJRefresh.h"

 

1.添加下拉刷新

MJRefreshHeaderView *header = [MJRefreshHeaderView header];

header.scrollView = self.tableView;

header.delegate = self;

 

2.添加上拉加载更多

MJRefreshFooterView *footer = [MJRefreshFooterView footer];

footer.scrollView = self.tableView;

footer.delegate = self;

 

3.监听刷新状态,有2种方式

1> 设置代理delegate,一旦控件进入了刷新状态,就会调用delegate的下列方法

- (void)refreshViewBeginRefreshing:(MJRefreshBaseView *)refreshView

{

    if ([refreshView isKindOfClass:[MJRefreshFooterView class]]) {

        // 上拉加载更多

        

    } else {

        // 下拉刷新

        

    }

}

 

2> 设置block回调

header.beginRefreshingBlock = ^(MJRefreshBaseView *refreshView) {

    

};

footer.beginRefreshingBlock = ^(MJRefreshBaseView *refreshView) {

    

};

 

4.通过代码进入刷新状态

[header beginRefreshing]; // 进入刷新状态就会触发相应的代理方法或者block

[footer beginRefreshing]; // 进入刷新状态就会触发相应的代理方法或者block

 

5.结束刷新状态,回到普通状态

[header endRefreshing];

[footer endRefreshing];

 

6.可以在MJRefreshBaseView.h中通过控制NeedAudio宏来开启音频功能

 

7.在MJRefreshFooterView.m和MJRefreshHeaderView.m中可以修改控件显示的文字

 

五、如果想在内部限制某个控件的宽高,不让外界随便改,可以重写setFrame:方法,在此方法内部设置自己的宽高

转载于:https://www.cnblogs.com/changxs/p/3440476.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值