小智 10
在您的设备上存储少量数据的最简单方法是使用NSUserDefaults.但只有财产清单才能以这种方式保存.属性列表是6种类型的对象的组合,NSNumber,NSString,NSArray,NSDictionary,NSDate,NSData.在你的情况下,这很容易做到.例如,要保存新的债务记录,您可以使用以下方法:
#define DEBTS_LIST_KEY @"listOfAllDebts"
#define DEBTOR_NAME_KEY @"debtorName"
#define DEBT_AMOUNT_KEY @"amountOfDebt"
-(void) saveDebt:(CGFloat) debtAmount forName:(NSString *) debtorName
{
// pointer to standart user defaults
NSUserDefaults * defaults = [NSUserDefaults standardUserDefaults];
// the mutalbe array of all debts
NSMutableArray * alldebtRecords = [[defaults objectForKey:DEBTS_LIST_KEY] mutableCopy];
// create new record
// to save CGFloat you need to wrap it into NSNumber
NSNumber * amount = [NSNumber numberWithFloat:debtAmount];
NSDictionary * newRecord = [NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:amount,debtorName, nil] forKeys:[NSArray arrayWithObjects:DEBT_AMOUNT_KEY, DEBTOR_NAME_KEY, nil]];
[alldebtRecords addObject:newRecord];
[defaults setObject:alldebtRecords forKey:DEBTS_LIST_KEY];
// do not forget to save changes
[defaults synchronize];
}
Run Code Online (Sandbox Code Playgroud)
阅读债务清单,你已经读过类似的东西.
但我建议你使用核心数据.它更灵活,您不必编写所有这些代码来管理您的数据(编辑现有记录或删除它们).您可以更轻松地扩展模型,例如,当您想要保存债务日期时.这是一个很好的教程的链接
| 归档时间: |
|
| 查看次数: |
23764 次 |
| 最近记录: |