適合: NSObject
定義: IGGridViewDataSourceHelper.h

概要

IGGridViewDataSourceHelperLoadMoreDelegate プロトコルは、行読み込みについての情報を IGGridViewDataSourceHelper に提供します。

この機能は、iOS アプリケーションの下側にスクロールすると、最後の行に「行を読み込む」または「行を読み込んでいます」と表示されます。

IGGridViewLoadMoreCell がビューに入るときに、行読み込みの要求が必要であることをアプリケーションに通知する loadMoreRows: セレクターが発生されます。データ ソースを更新し、行を読み込んだことをデータ ソース ヘルパーに通知します。その時点で、追加セルを読み込むかどうかの確認を表示する needMoreRows: メソッドが発生されます。

以下は実装例です。

    -(IGGridViewLoadMoreCell *)cellForLoadingMore:(IGGridView *)gridView 
    {
        NSString* lookup = @"LOAD_MORE";
        IGGridViewLoadMoreCell *cell = [gridView dequeueReusableCellWithIdentifier:lookup];
        if (cell == nil) 
            cell = [[IGGridViewLoadMoreCell alloc] initWithReuseIdentifier:lookup];

        cell.textLabel.textAlignment = UITextAlignmentCenter;
        cell.textLabel.text = @"Loading More Movies...";

        return cell;
    }

    -(BOOL)needMoreRows:(IGGridViewDataSourceHelper *)dataSource
    {
        return (dataSource.data.count < 200);
    }

    -(void)loadMoreRows:(IGGridViewDataSourceHelper *)dataSource
    {
        [self makeRequestToGetMoreRows:@selector(gotMoreRows:)];
    }

    -(void)gotMoreRows:(NSArray*)newData
    {
        IGGridViewDataSourceHelper* dataSource = _gridView.dataSource;
        [dataSource appendData:newData];
        [_gridView updateData];
    }

タスク

インスタンス メソッド

cellForLoadingMore:

行読み込み機能を表示するセルを含む IGGridViewDataSourceHelper を提供します。

- (IGGridViewLoadMoreCell *)cellForLoadingMore:(IGGridView *)gridView

パラメーター

gridView

セルに表示する IGGridView

戻り値

行を読み込んでいることを示すために表示される IGGridViewLoadMoreCell

定義:

IGGridViewDataSourceHelper.h

loadMoreRows:

要求を送信して、行の読み込みが必要であることをデリゲートに通知します。

- (void)loadMoreRows:(IGGridViewDataSourceHelper *)dataSource

パラメーター

dataSource

呼び出しを送信した IGGridViewDataSourceHelper

定義:

IGGridViewDataSourceHelper.h

needMoreRows:

行を読み込む必要があるかどうかをデリゲートに通知します。

- (BOOL)needMoreRows:(IGGridViewDataSourceHelper *)dataSource

パラメーター

dataSource

呼び出しを送信した IGGridViewDataSourceHelper

戻り値

行を読み込む必要がある場合は YES。すべてのデータがクライアントにある場合は NO。

定義:

IGGridViewDataSourceHelper.h