Ricerca…
introduzione
Esempio:
1. Dati statici da utilizzare nell'app.
Per salvare i dati statici in plist segui questi metodi:
a) Aggiungi un nuovo file
b) Fare clic su Elenco proprietà in Risorse
c) Nome della lista di proprietà e un file verrà creato come (data.plist qui)
d) È possibile creare un plist di array e dizionari come:
// Leggi plist da bundle e ottieni Root Dictionary
NSDictionary *dictRoot = [NSDictionary dictionaryWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"Data" ofType:@"plist"]];
// Il tuo dizionario contiene una serie di dizionari // Ora estrai una matrice da essa.
NSArray *arrayList = [NSArray arrayWithArray:[dictRoot objectForKey:@"Object1"]];
for(int i=0; i< [arrayList count]; i++)
{
NSMutableDictionary *details=[arrayList objectAtIndex:i];
}
Salva e modifica / cancella i dati da Plist
Hai già creato un plist. Questo plist rimarrà lo stesso in app. Se si desidera modificare i dati in questo plist, aggiungere nuovi dati in plist o rimuovere i dati da Plist, non è possibile apportare modifiche in questo file.
A tale scopo dovrai archiviare i tuoi plist in Document Directory. È possibile modificare il plist salvato nella directory del documento.
Salva plist nella directory del documento come:
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"Data" ofType:@"plist"];
NSDictionary *dict = [[NSDictionary alloc] initWithContentsOfFile:filePath];
NSDictionary *plistDict = dict;
NSFileManager *fileManager = [NSFileManager defaultManager];
NSString *error = nil;
NSData *plistData = [NSPropertyListSerialization dataFromPropertyList:plistDict format:NSPropertyListXMLFormat_v1_0 errorDescription:&error];
if (![fileManager fileExistsAtPath: plistPath]) {
if(plistData)
{
[plistData writeToFile:plistPath atomically:YES];
}
}
else
{
}
Riscrivi i dati da Plist come:
NSArray *paths = NSSearchPathForDirectoriesInDomains (NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsPath = [paths objectAtIndex:0];
NSString *plistPath = [documentsPath stringByAppendingPathComponent:@"Data.plist"];
NSDictionary *dict = [[NSDictionary alloc] initWithContentsOfFile:plistPath];
NSArray *usersArray = [dict objectForKey:@"Object1"];
È possibile modificare rimuovere, aggiungere nuovi dati secondo le proprie esigenze e salvare nuovamente il plist in Document Directory.