2016-05-22 7 views
1

Ich habe eine App, die ich eine PLIST aus dem Hauptpaket in das Dokumentenverzeichnis kopieren, die ich benutze, um eine unterteilte UITableview zu füllen. All das funktioniert gut. Ich möchte einige der Informationen in der PLIST ändern, wenn die Benutzer sie eingeben (der Kopfzeilen-Name der Sektion) und (der detaillierte Text der Zellen). Ich möchte auch zusätzliche Abschnitte hinzufügen, die den Abschnitt, der da ist, duplizieren und Informationen eingeben, wenn der Benutzer sie eingibt. das ist das plist enter image description hereSchreiben in ein Plist im Dokumentenverzeichnis Xcode

Ich habe nach Informationen darüber gesucht und verschiedene Dinge ausprobiert, aber nichts scheint zu funktionieren. Kann mir jemand zeigen, wie man den Header-String ändert und den detaillierten Text hinzufügt und einen ganz neuen Abschnitt mit Header und Zeilen mit Elementen hinzufügt?

dies ist der Code, den ich verwendet habe, um zu versuchen, die Header-Datei ohne Glück zu aktualisieren

NSArray *documentPaths15 = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentsDirectory18 = [documentPaths15 objectAtIndex:0]; 
    NSString *path10 = [documentsDirectory18 stringByAppendingPathComponent:@"TableDataMainView.plist"]; 
    NSFileManager *fileManager = [NSFileManager defaultManager]; 

    NSMutableDictionary *data1; 

    if ([fileManager fileExistsAtPath: path10]) 
    { 
     data1 = [[NSMutableDictionary alloc] initWithContentsOfFile: path10]; // if file exist at path initialise your dictionary with its data 
     NSLog(@"file exists"); 
    } 
    else 
    { 
     // If the file doesn’t exist, create an empty dictionary 
     data1 = [[NSMutableDictionary alloc] init]; 
     NSLog(@"file doesnt exist"); 
    } 

    //To insert the data into the plist 

    [data1 setObject:[NSString stringWithString:yourName] forKey:@"header"]; 
    [data1 writeToFile: path10 atomically:YES]; 

Jede Hilfe wäre sehr dankbar.

+0

plist wird normalerweise zur Verwaltung der Indexdatei des Persistenzdatenspeichers verwendet. So können Sie es einmal lesen und zurückschreiben. Sie können jedoch keinen neuen Eintrag programmatisch erstellen. Verwenden Sie Core Data Entity, wenn Ihre Daten dynamisch sind. – kaushal

+0

Ich bin zu Appcoda "Einführung in die Kerndaten" gegangen und getan, was soll tun, aber ich benutze - (void) userSwiped: (UIGestureRecognizer *) Absender – user1114881

+0

Ich habe AppCoda "Einführung in die Kerndaten" gegangen und was getan ist sollte tun, aber ich benutze - (void) userSwiped: (UIGestureRecognizer *) Absender anstelle einer Schaltfläche Aktion, um die Informationen zu speichern. aber ich bekomme immer den folgenden Fehler - [AppDelegate managedObjectContext]: unerkannter Selektor an Instanz 0x14fd262f0 gesendet – user1114881

Antwort

0

Ab sofort .. plist normalerweise verwendet, um Persistenz Datenspeicher-Index-Datei zu verwalten. So können Sie es einmal lesen und zurückschreiben. Sie können jedoch keinen neuen Eintrag programmatisch erstellen. Verwenden Sie Core Data Entity, wenn Ihre Daten dynamisch sind.

+0

habe dies herausgefunden danke für die Hilfe jetzt müssen nur die textLabel und detailTextLabel Textfarbe der Zelle ändern – user1114881

Verwandte Themen