id と name の 2 つの属性を持つカテゴリ エンティティを含むコア データ ファイルがあります。
これらの 2 つの属性から値を取得して更新する方法を教えてください。私は試して失敗しました。
これが私の現在のコードです:
- (void)viewDidLoad
{
[super viewDidLoad];
UIBarButtonItem *addButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(addCategory:)];
self.navigationItem.rightBarButtonItem = addButtonItem;
}
-(IBAction)addCategory:(id)sender
{
UIAlertView *addCategoryAlertView = [[UIAlertView alloc] initWithTitle:@"Add Category" message:@"" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"Add", nil];
addCategoryAlertView.alertViewStyle = UIAlertViewStylePlainTextInput;
self.textField = [addCategoryAlertView textFieldAtIndex:0];
self.textField.placeholder = @"Enter category name";
[addCategoryAlertView show];
}
および UIAlertView Delegate メソッドで
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
これらのカテゴリに値を追加する必要があります。
これが私が今それをやった方法です:
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
if (buttonIndex == kAddCategoryButtonIndex) {
AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
NSManagedObjectContext *context = [appDelegate managedObjectContext];
NSError *error;
//NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription insertNewObjectForEntityForName:@"Categories" inManagedObjectContext:context];
//[fetchRequest setEntity:entity];
[entity setValue:self.textField.text forKey:@"name"];
NSLog(@"%@",[entity valueForKey:@"name"]);
[context save:&error];
}
}
うまくいくと思いますが、これら2つの属性から値を取得できません。
誰かが私を助けることができれば、それは素晴らしいことです。ありがとう。