ASTableDelegate Protocol Reference
| Conforms to | ASCommonTableViewDelegate NSObject |
|---|---|
| Declared in | ASTableView.h |
Overview
This is a node-based UITableViewDelegate.
Note that -tableView:heightForRowAtIndexPath: has been removed; instead, your custom ASCellNode subclasses are responsible for deciding their preferred onscreen height in -calculateSizeThatFits:.
– tableView:willDisplayNodeForRowAtIndexPath:
Informs the delegate that the table view will add the node at the given index path to the view hierarchy.
- (void)tableView:(ASTableView *)tableView willDisplayNodeForRowAtIndexPath:(NSIndexPath *)indexPathParameters
tableView |
The sender. |
|---|---|
indexPath |
The index path of the row that will be displayed. |
Discussion
Warning: AsyncDisplayKit processes table view edits asynchronously. The index path passed into this method may not correspond to the same item in your data source if your data source has been updated since the last edit was processed.
Declared In
ASTableView.h
– tableView:didEndDisplayingNode:forRowAtIndexPath:
Informs the delegate that the table view did remove the provided node from the view hierarchy. This may be caused by the node scrolling out of view, or by deleting the row or its containing section with @c deleteRowsAtIndexPaths:withRowAnimation: or @c deleteSections:withRowAnimation: .
- (void)tableView:(ASTableView *)tableView didEndDisplayingNode:(ASCellNode *)node forRowAtIndexPath:(NSIndexPath *)indexPathParameters
tableView |
The sender. |
|---|---|
node |
The node which was removed from the view hierarchy. |
indexPath |
The index path at which the node was located before the removal. |
Declared In
ASTableView.h
– tableView:willBeginBatchFetchWithContext:
Receive a message that the tableView is near the end of its data set and more data should be fetched if necessary.
- (void)tableView:(ASTableView *)tableView willBeginBatchFetchWithContext:(ASBatchContext *)contextParameters
tableView |
The sender. |
|---|---|
context |
A context object that must be notified when the batch fetch is completed. |
Discussion
You must eventually call -completeBatchFetching: with an argument of YES in order to receive future notifications to do batch fetches. This method is called on a background queue.
ASTableView currently only supports batch events for tail loads. If you require a head load, consider implementing a UIRefreshControl.
Declared In
ASTableView.h
– shouldBatchFetchForTableView:
Tell the tableView if batch fetching should begin.
- (BOOL)shouldBatchFetchForTableView:(ASTableView *)tableViewParameters
tableView |
The sender. |
|---|
Discussion
Use this method to conditionally fetch batches. Example use cases are: limiting the total number of objects that can be fetched or no network connection.
If not implemented, the tableView assumes that it should notify its asyncDelegate when batch fetching should occur.
Declared In
ASTableView.h
– tableView:constrainedSizeForRowAtIndexPath:
Provides the constrained size range for measuring the row at the index path. Note: the widths in the returned size range are ignored!
- (ASSizeRange)tableView:(ASTableView *)tableView constrainedSizeForRowAtIndexPath:(NSIndexPath *)indexPathParameters
tableView |
The sender. |
|---|---|
indexPath |
The index path of the node. |
Return Value
A constrained size range for layout the node at this index path.
Declared In
ASTableView.h
– tableView:didEndDisplayingNodeForRowAtIndexPath:
Informs the delegate that the table view did remove the node which was previously at the given index path from the view hierarchy.
- (void)tableView:(ASTableView *)tableView didEndDisplayingNodeForRowAtIndexPath:(NSIndexPath *)indexPathDiscussion
Warning: AsyncDisplayKit processes table view edits asynchronously. The index path passed into this method may not correspond to the same item in your data source if your data source has been updated since the last edit was processed.
This method is deprecated. Use @c tableView:didEndDisplayingNode:forRowAtIndexPath: instead.
Declared In
ASTableView.h