2013-07-09 106 views
0

我目前有一個表格視圖,顯示數據庫Entity:ExData的所有內容。從核心數據庫中獲取特定數據並在UITableView中顯示

ExData有一個字符串類型的屬性標記。

我的問題是我希望在表格視圖中顯示ExData的內容,但只有標籤集爲2的條目爲例。

標籤是從先前的視圖控制器發送但這是可以以後作爲首先挑選出我只想硬代碼被顯示

ExDatasArray是一個可變的陣列僅一個標記值的條目。

NSManagedObjectContext * managedObjectContext = [self managedObjectContext];

NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] initWithEntityName:@"ExData"]; 

self.ExdatasArray = [[managedObjectContext executeFetchRequest:fetchRequest error:nil] mutableCopy]; 

以上就是如何從ExData數據被取出......

回答

0

要獲取具體的數據,您添加謂詞的讀取請求:

NSString *theTag = ... 
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"tag == %@", theTag]; 
[fetchRequest setPredicate:predicate]; 

備註:如果你在一個表格視圖中顯示結果集,你也可以考慮 使用NSFetchedResultsController

+0

@ user2512523:不客氣! –

0

如果我正確理解你的問題,你正試圖限制fetchRequest的結果。使用NSPredicate指定查詢,並根據需要使用NSSortDescriptor對其進行排序。下面我假設你的標籤屬性被命名爲tag,並且searchTagValue已經被適當地設置。

NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] initWithEntityName:@"ExData"]; 
fetchRequest.predicate = [NSPredicate predicateWithFormat:@"tag == %@", searchTagValue]; 
fetchRequest.sortDescriptors = [NSArray arrayWithObject:[NSSortDescriptor sortDescriptorWithKey:@"tag" ascending:YES]]; 

NSError *error; 
NSArray *results = [managedObjectContext executeFetchRequest:fetchRequest error:&error]; 
if (!result) { 
    // handle error 
} 
else { 
    self.ExdatasArray = [results mutableCopy]; 
} 
相關問題