iPad應用程序粉絲:ModalViewController不保存到核心數據?
我有一個modalviewcontroller設計爲在按鈕上點擊,以便用戶可以添加註釋或更改數據輸入。在對數據庫進行更改時,需要刷新主窗口中的表格。數據庫包含一種高級書籤。我可以根據用戶瀏覽的位置創建和刪除數據庫條目 - 沒問題:我得到控制檯報告「saveContext KQVC line 203」,並且條目被快速添加到表格中。
的modalviewcontroller甚至彈出(上輕敲藍色(>)細節圖標也在每個小區中)與現有記錄填充的數據。但是保存在modalviewcontroller 按鈕只是不保存。 (刪除功能很好)。這裏是我的modalviewcontroller代碼保存按鈕:在knittingqueenviewcontroller
#import "PatternViewController.h"
#import "KnittingQueenViewController.h"
@implementation PatternViewController
@dynamic patternName, patternNotes, patternUrl, dateAdded;
@synthesize patternA, patternView, knittingQueenViewController;
-(IBAction)save {
[patternA setValue:patternName.text forKey:@"patternName"];
[patternA setValue:patternUrl.text forKey:@"patternUrl"];
[patternA setValue:patternNotes.text forKey:@"patternNotes"];
dateAdded = [NSDate date];
[patternA setValue:dateAdded forKey:@"dateAdded"];
[patternA setValue:patternLabel.text forKey:@"patternLabel"];
[patternA setValue:pngPath forKey:@"patternPhoto"];
[knittingQueenViewController saveContext];
[self dismissModalViewControllerAnimated:YES];
}
和saveContext方法:
- (void)saveContext {
NSManagedObjectContext *context = [self.fetchedResultsController managedObjectContext];
NSError *error = nil;
if (![context save:&error]) {
// error code goes in here
}
NSLog(@"saveContext KQVC line 203");
[self refreshPatternsTable];
}
我沒有錯誤,但沒有任何保存的數據。我的問題:爲什麼不是從modalviewcontroller調用saveContext方法?任何建議,你可以提供最受讚賞。
之一前兩個問題在這裏幾乎可以肯定是問題。 –
@noa Q1的答案:該方法被稱爲,但因爲knittingQueenViewController是零http://stackoverflow.com/questions/3678180/how-to-check-if-a-specific-uiviewcontrollers-view-is-currently-根據這個答案可見的測試。 Q2的答覆:沒有。所以我已經分配init,現在它崩潰了。 –
分配另一個這裏不會幫助你 - 它不會有你的FetchedResultsController或ManagedObjectContext一個引用,例如。你在哪裏首先分配並初始化PatternViewController?從代碼?您可能需要添加一些代碼,將'knittingQueenViewController'設置爲已創建的實例。 – paulmelnikow