中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

iOS下拉刷新上拉加載更多EGOTableViewPullRefresh類庫

發布時間:2020-07-06 07:32:18 來源:網絡 閱讀:5847 作者:新風作浪 欄目:移動開發

   在一個項目開發過程中為了更好的體驗經常會用到下拉刷新更新數據,當然也伴隨一些上拉加載更多數據的情況;當前比較火的EGOTableViewPullRefresh只實現了下拉功能,而沒有上拉的功能。這里介紹一個同時集成下拉刷新和上拉加載更多的類庫EGOTableViewPullRefresh

英文原文和類庫下載地址:https://github.com/emreberge/EGOTableViewPullRefresh


附帶 Demo效果

iOS下拉刷新上拉加載更多EGOTableViewPullRefresh類庫iOS下拉刷新上拉加載更多EGOTableViewPullRefresh類庫



Whats different on this fork:



  • 容易集成,使用interface builder 添加tableView進行配置。

  • 配置簡單, 箭頭頭像,背景顏色和文本顏色都能通過PullTableView類的屬性很容易的更改。  

  • 上拉加載更多數據功能在Table的底部。

  • 可以通過代碼修改刷新和加載更多動畫。



The fast setup:

  • 添加 QuartzCore.framework 到你的工程中。

  • 將 EGOTableViewPullRefresh 拖到你的工程目錄下。

  • 查看 PullTableView.h 文件可用的屬性。

  • 添加一個PullTableView 到你代碼中,實現PullTableViewDelegate委托方法。

  • 欣賞吧。

The detailed setup (Walk through for creating the demo project):

  • 創建一個新的xcode工程

  • 選擇 View Based Application 模板(xcode 4.2以后版本是 Single View Application模板)

  • 工程名字 EGOTableViewPullRefreshDemo

  • 在工程文件下創建EGOTableViewPullRefreshDemoViewController控制器類(Single View Application模板不需這步)

  • 添加 QuartzCore.framework 到工程中

添加 PullTableView 到工程里:

  • 拖拽 EGOTableViewPullRefresh 目錄下文件到工程支持的文件組下,確保(EGOTableViewPullRefresh)下文件都拷貝到目標文件組下

添加 PullTable 視圖到 EGOTableViewPullRefreshDemoViewController.xib上:


  • 拖一個UITableView控件到View視圖上.

  • 打開 Identity inspector 將Table 的繼承類由  UITableView 改成PullTableView

  • 連接 dataSources數據源和 pullDelegate協議到PullTableView的 File's owner上

配置視圖控制器的頭文件 EGOTableViewPullRefreshDemoViewController.h:

  • 添加 #import "PullTableView.h"

  • 聲明 PullTableViewDelegate 和 UITableViewDataSource協議

  • 創建一個屬性名為pullTableView的輸出口連接到interface Builder上的tableView上

配置視圖控制器和頁腳 EGOTableViewPullRefreshDemoViewController.m

  • 在.m文件中添加下面代碼



#pragma mark - Refresh and load more methods
- (void) refreshTable
{
    /*
         Code to actually refresh goes here.
     */
    self.pullTableView.pullLastRefreshDate = [NSDate date];
    self.pullTableView.pullTableIsRefreshing = NO;
}
- (void) loadMoreDataToTable
{
    /*
     Code to actually load more data goes here.
     */
    self.pullTableView.pullTableIsLoadingMore = NO;
}
#pragma mark - UITableViewDataSource
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return 5;
}
- (NSInteger) tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return 10;
}
- (UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *cellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
    if(!cell) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
    }
    cell.textLabel.text = [NSString stringWithFormat:@"Row %i", indexPath.row];
    return cell;
}
- (NSString *) tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
{
    return [NSString stringWithFormat:@"Section %i begins here!", section];
}
- (NSString *) tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section
{
    return [NSString stringWithFormat:@"Section %i ends here!", section];
}
#pragma mark - PullTableViewDelegate
- (void)pullTableViewDidTriggerRefresh:(PullTableView *)pullTableView
{
    [self performSelector:@selector(refreshTable) withObject:nil afterDelay:3.0f];
}
- (void)pullTableViewDidTriggerLoadMore:(PullTableView *)pullTableView
{
    [self performSelector:@selector(loadMoreDataToTable) withObject:nil afterDelay:3.0f];
}


  • 對于UI的配置,在ViewDidLoad()方法里面添加下面代碼(比如 修改刷新和上拉的背景色箭頭頭像等)

self.pullTableView.pullArrowImage = [UIImage p_w_picpathNamed:@"blackArrow"];
self.pullTableView.pullBackgroundColor = [UIColor yellowColor];
self.pullTableView.pullTextColor = [UIColor blackColor];

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

三亚市| 康马县| 建昌县| 涞源县| 邮箱| 六盘水市| 镇安县| 都兰县| 福泉市| 潜山县| 壶关县| 天门市| 东至县| 岗巴县| 林甸县| 安仁县| 雷山县| 高雄市| 翁牛特旗| 江陵县| 博乐市| 石狮市| 江北区| 准格尔旗| 洪江市| 华池县| 普定县| 都江堰市| 本溪| 文山县| 增城市| 株洲市| 冷水江市| 浙江省| 齐齐哈尔市| 务川| 西峡县| 崇左市| 江城| 界首市| 同仁县|