Introduced the RKTableController component for iOS.

RKTableController provides a flexible, integrated system for driving iOS table views using
the RestKit object mapping engine. Local domain objects can be mapped into table cells within a
collection or presented for editing as part of a form. There are three flavors of table controllers
available:

* Static Tables: RKTableController can be used to render simple static tables that are composed of RKTableItems
presented in RKTableSections. Table items can quickly be built and added to a table without a backing model
or can have content object mapped into them for presentation.
* Network Tables: RKTableController can also render a table with the results of a network load. The typical use
case here is to have RestKit retrieve a JSON/XML payload from your remote system and then render the content into
a table.
* Core Data Tables: RKFetchedResultsTableController can efficiently drive a table view using objects pulled from a
Core Data managed object context. Typical use-cases here are for the presentation of large collections that are
pulled from a remote system, offering offline access, or speeding up a UI by using Core Data as a fast local cache.

RKTableController supports a number of bells and whistles including integrated searching/filtering and pull to refresh.
This commit is contained in:
Blake Watters
2011-11-17 12:17:07 -05:00
parent b73d042b23
commit 3d0f0ab39e
192 changed files with 17854 additions and 1584 deletions

View File

@@ -21,6 +21,7 @@
#import "Network.h"
#import "RKObjectMapping.h"
#import "RKObjectMappingResult.h"
#import "RKObjectMappingProvider.h"
@class RKObjectMappingProvider;
@class RKObjectLoader;
@@ -133,6 +134,7 @@ typedef void(^RKObjectLoaderDidLoadObjectsDictionaryBlock)(NSDictionary *diction
NSString* _serializationMIMEType;
NSObject* _sourceObject;
NSObject* _targetObject;
dispatch_queue_t _mappingQueue;
}
/**
@@ -245,6 +247,13 @@ typedef void(^RKObjectLoaderDidLoadObjectsDictionaryBlock)(NSDictionary *diction
*/
@property (nonatomic, retain) NSObject *targetObject;
/**
The Grand Central Dispatch queue to perform our parsing and object mapping
within. By default, object loaders will use the mappingQueue from the RKObjectManager
that created the loader. You can override this on a per-loader basis as necessary.
*/
@property (nonatomic, assign) dispatch_queue_t mappingQueue;
///////////////////////////////////////////////////////////////////////////////////////////
/**