我在如何实现从所选数据库及其属性组创建新视图方面遇到了一些问题。在我的应用程序中,所有资源(数据)都显示在mainviewController.xib中。在第二个viewController中,我有文本字段将数据添加到我的基础。在这个文本字段是组。我想在我的基地写一个新组时添加新视图。当我的团体名称与我的实际基础相同时,我什么都不做。在这里,我给出了一些我使用的代码。在我的代码中是grupa作为组。此代码来自第二个视图。
- (IBAction) saveData
{
NSLog(@"saveData");
[self dismissKeyboard];
Destination *dest = (Destination *)[NSEntityDescription insertNewObjectForEntityForName:@"Destination"
inManagedObjectContext:managedObjectContext];
dest.nazwa = nazwaTextField.text;
dest.zasob = zasobTextField.text;
dest.grupa = grupaTextField.text;
dest.typzasobu = typzasobuTextField.text;
dest.tag = [NSNumber numberWithInt:[_arrayLogics indexOfObject:typzasobuTextField.text]];
NSError *error;
// here's where the actual save happens, and if it doesn't we print something out to the console
if (![managedObjectContext save:&error])
{
NSLog(@"Problem saving: %@", [error localizedDescription]);
}
// **** log objects currently in database ****
// create fetch object, this object fetch's the objects out of the database
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Destination" inManagedObjectContext:managedObjectContext];
[fetchRequest setEntity:entity];
NSArray *fetchedObjects = [managedObjectContext executeFetchRequest:fetchRequest error:&error];
for (NSManagedObject *info in fetchedObjects)
{
NSLog(@"Nazwa Zasobu: %@", [info valueForKey:@"nazwa"]);
NSLog(@"Zasób: %@", [info valueForKey:@"zasob"]);
NSLog(@"Grupa: %@", [info valueForKey:@"grupa"]);
NSLog(@"Typ zasobu: %@", [info valueForKey:@"typzasobu"]);
}
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Potwierdzenie" message:@"Zasób zapisany" delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
[alert show];
}
感谢
答案 0 :(得分:0)
我认为我理解......
如果我错了,请纠正我,但我认为您希望主视图看起来非常像这样:
如果这是正确的,我建议您使用UITableViewController的表格样式查看UITableView和UITableViewStyleGrouped。这样,您就可以按照Apple推荐的方式添加/编辑资源列表。
流程看起来像这样:
您需要了解NSSortDescriptor's(从数据存储区订购您的提取),以及如何插入您的表格data source& delegate methods但是值得的
以下是一些可以帮助您获取知识的资源: