我有一个包含类别实体的核心数据文件,它有 2 个属性 - id 和 name。
有人可以为我提供一种从这两个属性中获取值并更新它们的方法。我已经尝试过并且失败了。
这是我当前的代码:
- (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];
}
}
而且我认为它有效,但我无法从这两个属性中获取值。
如果有人可以帮助我,那就太好了。谢谢。