0
有一個應用程序,僱員名單有,每個僱員可以有幾個任務。點擊員工時,他的任務將打開。這裏應用程序開始工作不正確,即打開所有任務,而不僅僅是特定的員工。iOS應用程序中的錯誤通信,核心數據
數據庫方案:https://drive.google.com/open?id=0BxSMtqa62EX9TGE5eVlwX1BoaU0
項目:https://drive.google.com/open?id=0BxSMtqa62EX9RVIzcWtCaktpM0E
點擊處理:
-(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if([segue.identifier isEqualToString:@"empToTasks"]){
NSManagedObject *selectedDevice = [self.employees objectAtIndex:[[self.tableView indexPathForSelectedRow] row]];
TasksViewController *destViewController = segue.destinationViewController;
destViewController.emp = selectedDevice;
}
}
添加任務:
- (IBAction)saveTask:(id)sender{
NSManagedObjectContext *context = [self managedObjectContext];
NSManagedObject *newTask = [NSEntityDescription insertNewObjectForEntityForName:@"Tasks" inManagedObjectContext:context];
[newTask setValue:self.tasksField.text forKey:@"task"];
[newTask setValue:self.dataTasksField.text forKey:@"dateTask"];
NSError *error=nil;
if (![context save:&error]) {
NSLog(@"Can't save %@ %@", error, [error localizedDescription]);
}
else {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Ура" message:@"Успешно добавлено" delegate:self cancelButtonTitle:@"ok" otherButtonTitles:nil];
[alert show];
}
}
查看任務表:
-(NSInteger) tableView:(UITableView *)tableView numberOfRowsInSection:`(NSInteger)section{
return self.emp.task.count;
}
-(UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
static NSString *CellIdentifier = @"Cell1";
UITableViewCell*cell1 =[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
Tasks *currentTask =[self.emp.task.allObjects objectAtIndex:indexPath.row];
cell1.textLabel.text = currentTask.task;
return cell1;
}
什麼需要糾正只顯示特定員工的任務?
你在哪裏添加Task實體到Employee實體。即'[_emp addTask:newTask];' – Khundragpan
@Khundragpan NSManagedObject * newTask = [NSEntityDescription insertNewObjectForEntityForName:@「Tasks」inManagedObjectContext:context]; [newTask setValue:self.tasksField.text forKey:@「task」]; [newTask setValue:self.dataTasksField.text forKey:@「dateTask」]; 這裏! –