La manera más fácil de almacenar una cantidad pequeña de datos en su dispositivo es usar NSUserDefaults. Pero solo las listas de propiedades podrían guardarse de esta manera. Una lista de propiedades es una combinación de objetos de 6 tipos, NSNumber, NSString, NSArray, NSDictionary, NSDate, NSData. En su caso, es fácil de hacer. Por ejemplo, para guardar un nuevo registro de la deuda se puede utilizar el método siguiente:
#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];
}
Para leelista de las deudas que haya leído algo similar.
Pero le recomiendo que utilice datos básicos. Es más flexible y no tendrá que escribir todo este código para administrar sus datos (para editar registros existentes, o para eliminarlos). Podrá ampliar su modelo mucho más fácilmente, por ejemplo, cuando desee guardar la fecha de la deuda. Este es el enlace a a good tutorial
¿Cuántos registros espera guardar? – Gruntcakes
Eso es definido por el usuario, por lo que no puedo saber (podría ser solo 4, sino también 300). Depende del usuario. – H3rrVorr4g3nd