,當我從獲取核心數據記錄,它返回空值...我不知道是什麼問題...無法從核心數據獲取的數據文件
當我NSLog
檢查顯示像這樣:
"<Ad: 0x979fb30> (entity: Ad; id: 0x9799470 <x-coredata://B3AA111F-8307-4A16-B898-
403A804DFDFB/Ad/p22> ; data: <fault>)",
"<Ad: 0x979fd70> (entity: Ad; id: 0x9799480 <x-coredata://B3AA111F-8307-4A16-B898-
403A804DFDFB/Ad/p23> ; data: <fault>)
這是我的代碼。 我將所有核心數據函數都返回到名爲dbmanager的單獨類中。
- (void)viewDidLoad
{
DBManager *manager=[[DBManager alloc]init];
self.fetchedRecordsArray = [manager fetchAllAds];
[self.shoppingtbl reloadData];
}
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [self.fetchedRecordsArray count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath
*)indexPath
{
static NSString *CellIdentifier = @"ShoppingCart";
ShoppingCart *cell = (ShoppingCart*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier
forIndexPath:indexPath];
cell.backgroundColor=[UIColor clearColor];
ad=[self.fetchedRecordsArray objectAtIndex:indexPath.row]
cell.addesc.text = ad.data;
cell.adId.text=[NSString stringWithFormat:@"%lu", (long)[ad.adId integerValue]];
cell.adstatus.text=[NSString stringWithFormat:@"%@",ad.state];
return cell;
}
實體名稱爲Ad。它包含Adid,狀態,數據。
在表視圖它顯示字符串和0號空值..
什麼是self.fetchedRecordsArray viewDidLoad?你可以NSLog嗎?另外,爲什麼你不使用NSFetchedResultsController? – djromero 2014-10-08 12:55:21
當我檢查Nslog它顯示像這樣「(實體:Ad; id:0x9a5a6c0 ;數據:) 「, 」(實體:Ad; id:0x9a5a6d0 ;數據:)「 –
user3354840
2014-10-08 13:00:38
請更新問題以包含 - [DBManager fetchAllAds]的內容。這可能是核心數據上下文的問題。核心數據是一個複雜的主題,我建議你檢查蘋果示例數據和一些開源項目,看看如何正確使用它。那裏有一些教程。 – djromero 2014-10-08 13:10:45