Теперь у меня проблема не одна, а две, а именно:
Требование к приложению: введите данные о сотрудниках и нажмите кнопку Сохранить.имя сотрудника должно быть добавлено в табличном представлении.Нажмите на одну строку, детали должны отображаться в подробном представлении.
Проблема 1: после первого нажатия кнопки «Сохранить» она отображается в виде таблицы, но со следующего нажатия она не отображается до тех пор, пока приложение не будет перезапущено.Мой код для этого выглядит следующим образом:
(void)saveDetails{
EmployeeDetailsAppDelegate *appDelegate = (EmployeeDetailsAppDelegate *) [[UIApplication sharedApplication] delegate];
NSManagedObjectContext *context = [appDelegate managedObjectContext];
NSManagedObject *newDetails;
newDetails = [NSEntityDescription insertNewObjectForEntityForName:@"Details" inManagedObjectContext:context];
[newDetails setValue:empID.text forKey:@"EmployeeID"];
[newDetails setValue:empName.text forKey:@"EmployeeName"];
[newDetails setValue:empDepartment.text forKey:@"EmployeeDepartment"];
empID.text = @"";
empName.text = @"";
empDepartment.text = @"";
[[appDelegate rootViewController]addNewObject:empName.text];
NSError *error;
[context save:&error];
[self dismissModalViewControllerAnimated:YES];
}
Проблема 2: Это в основном не проблема, а запрос.При щелчке строки в табличном представлении отдел сотрудников отображается в подробном представлении.Теперь я хочу также отобразить идентификатор сотрудника.Как я могу это сделать?Мой код для отображения сотрудника отдела:
(void)tableView:(UITableView *)aTableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
if([self.array count]){
dictionary = [self.array objectAtIndex:indexPath.row] ;
if([dictionary objectForKey:@"EmployeeDepartment"]){
[dictionary objectForKey:@"EmployeeDepartment"];
NSString *empDep = [dictionary objectForKey:@"EmployeeDepartment"];
NSLog(@"Dep is %@",empDep);
}
}
detailViewController.detailItem = [NSString stringWithFormat:@"Employee Department: %@",[dictionary objectForKey:@"EmployeeDepartment"]];
self.navigationItem.leftBarButtonItem.enabled = YES;
}
PS: это для iPad с Core данные, используемые в качестве хранилища.