Tryck ⌘ - N. Skapa en ny UIViewController med en XIB som heter AddIngredientViewController. Dubbelklicka på IngredientsRootViewController.h och skriv in:
class recept, Omdömen
interface SelectFromIngredientsViewController: UITableViewController {Omdömen
Recept * recept, Omdömen
NSManagedObjectContext * managedObjectContext,
NSFetchedResultsController * fetchedResultsController, Omdömen
} Omdömen
property (nonatomic, behålla) Recept * recept, Omdömen
property (nonatomic, behålla) NSManagedObjectContext * managedObjectContext, Omdömen
property (nonatomic, behålla) NSFetchedResultsController * fetchedResultsController, Omdömen
end Omdömen
Öppna IngredientsRootViewController.
m och skriv in:
#import "IngredientsRootViewController.h" Omdömen
#import "Ingredient.h" Omdömen
#import "AddIngredientViewController.h" Omdömen
#import "CoreDataTutorialPart2AppDelegate.h" Omdömen
implementation IngredientsRootViewController
synthesize managedObjectContext, fetchedResultsController;
- (void) viewDidLoad {Omdömen
[super viewDidLoad], Omdömen
UIBarButtonItem * addButton = [[ ,,,0],UIBarButtonItem alloc] initWithBarButtonSystemItem: UIBarButtonSystemItemAdd mål: själv åtgärd:selector (addIngredient)]; Omdömen
self.
navigationItem.leftBarButtonItem = addButton; Omdömen
[addButton release], Omdömen
//Avkommentera följande rad för att visa en knappen Redigera i navigeringsfältet för den här vyn controller Omdömen
self.navigationItem.rightBarButtonItem = self.editButtonItem;. Omdömen
CoreDataTutorialPart2AppDelegate * appDelegate = (CoreDataTutorialPart2AppDelegate *) [ ,,,0],[UIApplication sharedApplication] delegat],
self.managedObjectContext = appDelegate.
managedObjectContext; Omdömen
NSError * error = noll, Omdömen
om ([[själv fetchedResultsController] performFetch: & error ;]) {Omdömen
NSLog (@ "Olösta fel% @% @", fel, [error Userinfo]), Omdömen
avbryta ();
}
} Omdömen
- (void) addIngredient {Omdömen
AddIngredientViewController * addIngredientView = [[AddIngredientViewController alloc] initWithNibName: @ "AddIngredientViewController" -paketet: [NSBundle mainBundle]];
< p> ingrediens * ingrediens = [NSEntityDescription insertNewObjectForEntityForName: @ "ingrediens" inManagedObjectContext: self.
managedObjectContext]; Omdömen
addIngredientView.ingredient = ingrediens;
UINavigationControlle