0
我有一個存儲一些數據的表。假設數據太大而無法一次加載到內存中。我想在UItableView中顯示這些數據。帶有MagicalRecord巨大數據集的UItableView
-(NSInteger) numberOfSectionsInTableView:(UITableView *)tableView
{
return 1;
}
-(NSInteger) tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [Item MR_numberOfEntities];
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
// How to get object for this row ???
return cell;
}
我所知道的唯一方法是將所有的數據加載到陣列
NSArray *items = [Item MR_findAll];
但我不想這樣做。用戶將顯示前10行,爲什麼我應該從CoreData加載它們。有什麼方法可以使用MagicalRecord一個接一個地獲取它們?
這個答案是舊的(和MagicalRecord從那時起一個很大的變化),但你可以把fetchLimit使用自定義獲取: https://github.com/magicalpanda/MagicalRecord/issues/283 – Larme
@Yegor Razumovsky根據您的要求更新了我的答案! – ProblemSlover
如果你不能在MR中使用'NSFetchedResultsController',我建議將MR丟棄。 – Avi