日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

IOS开发之下拉刷新和上拉加载更多

發布時間:2025/3/20 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 IOS开发之下拉刷新和上拉加载更多 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

IOS開發之下拉刷新和上拉加載更多

1.簡介

  常用的下拉刷新和上拉加載更多的實現方式

    (1)UIRefreshControl

    (2)EGOTableViewRefresh

    (3)AH3DPullRefresh

    (4)MJRefresh

    (5)自己實現

?

2.AH3DPullRefresh的使用

  2.1 配置

    1.導入AH3DPullRefresh工程文件

    2.在工程TARGETS-> Build Phases-> Compile Sources->

      搜索UIScrollView+AH3DPullRefresh并在后面加上? “-fno-objc-arc”

    3.添加頭UIScrollView+AH3DPullRefresh的頭文件

#import "UIScrollView+AH3DPullRefresh.h"

  2.2 使用(基于滿座網的實例)

    1.添加下拉刷新和上拉加載更多的方法

#pragma mark 下拉刷新和上拉加載更多 -(void)addPullRefreshAndPullLoadMore{[_tableView setPullToRefreshHandler:^{//從第一行數據開始下載 _offset = 1; [self startDownloadData]; }]; [_tableView setPullToLoadMoreHandler:^{ _offset += _pageSize; [self startDownloadData]; }]; }

    2. 下載數據:如果是下拉刷新先清空所有的數據

//如果_offset = 1,重新刷新if (_offset == 1) {[_dataArray removeAllObjects];}

     ? 加載完成新的數據之后結束刷新并刷新表格

//結束刷新 [_tableView refreshFinished];[_tableView loadMoreFinished];[_tableView reloadData];

    3.完整的代碼:

-(void)startDownloadData {NSString *urlStr = [NSString stringWithFormat:MAIN_SHOP_URL,_city,_categotry,_offset,_pageSize];_reauest = [[HttpRequest alloc]init];[_reauest requestWithUrl:urlStr targe:self action:@selector(dealDownloadFinish:)]; }-(void)dealDownloadFinish:(HttpRequest *)request{ NSString *str = [[NSString alloc]initWithData:request.data encoding:NSUTF8StringEncoding]; NSLog(@"%@",str); GDataXMLDocument *doc = [[GDataXMLDocument alloc]initWithData:request.data options:0 error:nil]; NSArray *list = [doc nodesForXPath:@"//promotion" error:nil]; //如果_offset = 1,重新刷新 if (_offset == 1) { [_dataArray removeAllObjects]; } for (GDataXMLElement *promotion in list) { PromotionModel *model = [[PromotionModel alloc]init]; model.myid = [[[promotion elementsForName:@"id"] firstObject] stringValue]; model.name = [[[promotion elementsForName:@"name"] firstObject] stringValue]; [_dataArray addObject:model]; } //結束刷新 [_tableView refreshFinished]; [_tableView loadMoreFinished]; [_tableView reloadData]; }

?

    

下載

轉載于:https://www.cnblogs.com/zfrankice/articles/4393946.html

總結

以上是生活随笔為你收集整理的IOS开发之下拉刷新和上拉加载更多的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。