ios 下拉刷新动画效果是用gif的吗

ios 下拉刷新动画效果是用gif的吗,第1张

千锋扣丁学堂iOS开发为您解答:

1.首先去github上下载最新版 MJ刷新库。

2.tableVIew中加入相关代码

_tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, MCAPPWidth, MCAPPHeight - 64)]

_tableView.backgroundColor = myClearColor

_tableView.separatorStyle = UITableViewCellSeparatorStyleNone

_tableView.delegate = self

_tableView.dataSource = self

_tableView.showsVerticalScrollIndicator = NO

_tableView.scrollsToTop = YES

[self.view addSubview:_tableView]

[_tableView addGifHeaderWithRefreshingTarget:self refreshingAction:@selector(loadData)]

[_tableView addGifFooterWithRefreshingTarget:self refreshingAction:@selector(loadMoreData)]

[self gif]

//loadData 为你下拉刷新时请求网络数据的方法 loadMoreData为你上拉加载时请求网络数据的方法

3. [self gif]

- (void)gif

{

NSMutableArray *idleImages = [NSMutableArray array]

//这块为你刷新时出现的gif图 需要循环添加到数组中

for (NSUInteger i = 1i <= 5i++) {

UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@img_loading-%lu.png, (unsigned long)i]]

[idleImages addObject:image]

}

[_tableView.gifHeader setImages:idleImages forState:MJRefreshHeaderStateIdle]

_tableView.gifFooter.refreshingImages = idleImages

_tableView.gifHeader.updatedTimeHidden = YES

// 设置即将刷新状态的动画图片(一松开就会刷新的状态)

NSMutableArray *refreshingImages = [NSMutableArray array]

for (NSUInteger i = 1i <= 5i++) {

UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@img_loading-%lu.png, (unsigned long)i]]

[refreshingImages addObject:image]

}

[_tableView.gifHeader setImages:refreshingImages forState:MJRefreshHeaderStatePulling]

}

4. 自定义刷新时顶部底部出现的Label和gif图的frame 这里举footer的例子

MJRefreshGifFooter.m

- (void)layoutSubviews

{

[super layoutSubviews]

// 指示器 gif图的frame

self.gifView.frame = CGRectMake(self.bounds.origin.x + 20, self.bounds.origin.y + 15, self.bounds.size.width / 2, self.bounds.size.height / 2)

if (self.stateHidden) {

self.gifView.contentMode = UIViewContentModeCenter

} else {

self.gifView.contentMode = UIViewContentModeScaleAspectFit

self.gifView.mj_w = self.mj_w * 0.5 - 90

}

}

MJRefreshFooter.m

- (void)layoutSubviews

{

[super layoutSubviews]

self.loadMoreButton.frame = self.bounds

self.loadMoreButton.hidden = YES

//Label的frame

self.stateLabel.frame = CGRectMake(self.bounds.origin.x, self.bounds.origin.y + 15, self.bounds.size.width, self.bounds.size.height / 2)

self.noMoreLabel.frame = self.bounds

}

同理header的gif图frame 和Labelframe 都在相应的类里的方法里 都可以根据需求去修改

更多的设置可以看下MJ在github上相关的文档。

微博添加GIF图片,跟上传普通照片方法一致。

1、首先登陆微博;

2、输入账号密码后进入到主页,在发表微博处填写内容。

3、点击图片插入单图

4、点击GIF图片的所在文件夹(示范是放在桌面的一张gif图)

5、添加完毕后,点击发布,就完成了发布gif动态图片了。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11793759.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-18
下一篇2023-05-18

发表评论

登录后才能评论

评论列表(0条)

    保存