Cách dễ nhất để lưu trữ lượng dữ liệu nhỏ trên thiết bị của bạn là sử dụng NSUserDefaults. Nhưng chỉ danh sách tài sản mới có thể được lưu theo cách này. Một danh sách thuộc tính là sự kết hợp của các đối tượng gồm 6 loại, NSNumber, NSString, NSArray, NSDictionary, NSDate, NSData. Trong trường hợp của bạn thật dễ dàng để làm. Ví dụ: để lưu bản ghi nợ mới, bạn có thể sử dụng phương thức sau:
#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];
}
Để đọcDanh sách các khoản nợ bạn đã đọc tương tự.
Nhưng tôi khuyên bạn nên sử dụng dữ liệu cốt lõi. Nó linh hoạt hơn và bạn sẽ không phải viết tất cả mã này để quản lý dữ liệu của mình (để chỉnh sửa các bản ghi đã tồn tại hoặc để xóa chúng). Bạn sẽ có thể mở rộng mô hình của bạn dễ dàng hơn nhiều, ví dụ, khi bạn muốn lưu ngày của khoản nợ. Đây là liên kết tới a good tutorial
Bạn muốn lưu bao nhiêu hồ sơ? – Gruntcakes
Thats người dùng được xác định - vì vậy tôi không thể biết (chỉ có thể 4 - nhưng cũng 300). Phụ thuộc vào người dùng. – H3rrVorr4g3nd