我需要一些帮助来保存自定义详细信息视图控制器。在我的表视图中,我有一个添加和编辑按钮,用户可以在其中添加和删除自定义单元格。每个单元格都转到相同的自定义视图,我唯一的问题是有什么方法可以使用SQlite或其他数据库保存每个单元格?我只是不想创建大量的viewcontrollers并使用NSUserDefaults保存每个单元格。
我的代码:
表。 h =
IBOutlet UITableView *warrantyTableView;
NSMutableArray *data;
IBOutlet UITextField *tableCellText;
IBOutlet UITableView *mainTableView;
IBOutlet UINavigationItem *navItem;
}
- (IBAction)addRowToTableView;
- (IBAction)editTable;
- (NSString *)dataFilePath;
- (IBAction)endText;
Table.m =
- (NSString *)dataFilePath {
NSString *dataFilePath;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentDirectory = [paths objectAtIndex:0];
dataFilePath = [[documentDirectory stringByAppendingPathComponent:@"applicationData.plist"] retain];
return dataFilePath;
}
- (void)saveData {
[NSKeyedArchiver archiveRootObject:[data copy] toFile:[self dataFilePath]];
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
// Navigation logic may go here. Create and push another view controller.
PushedViewController *pushedViewController = [[PushedViewController alloc] initWithNibName:@"PushedView" bundle:nil];
// ...
// Pass the selected object to the new view controller.
PushedViewController *ifView = [[PushedViewController alloc] initWithNibName:@"PushedView" bundle:nil];
[self.navigationController pushViewController:ifView animated:YES];
[ifView release];
}
答案 0 :(得分:1)
为什么要将每个单元格保存在数据库中?将所有数据保存在SQLite中的单元格中。访问时,从SQLite数据库获取数据到字典数组。字典将包含一个单元格的所有数据,该数组将包含具有每个单元格数据的所有字典。然后使用该数组中的数据重新加载tableview。 WWhile编辑/添加/删除对象的查看对象,首先从字典数组执行整个操作,然后,当单个操作完成后,将其保存到sqlite并再次重新加载tableview。