michael m.
Aktives Mitglied
Thread Starter
- Dabei seit
- 29.12.2006
- Beiträge
- 407
- Reaktionspunkte
- 6
Hi,
mittlerweile bin ich dabei mein Konsolenprogramm zu einem Desktopprogramm um zu schreiben und erlerne nun die Möglichkeiten mit einer Benutzeroberfläche.
Ich habe gelesen, das die Methode "awakeFromNib" immer als erstes ausgeführt wird und meist für die Initialisierung einer Oberfläche benutzt wird.
Daher habe ich Code geschrieben, der mit dem Aufbau des Fensters einige Variablen füllt und nach vorhandenen Dateien Ausschau hält.
Soweit funktioniert das ganze, was mir aber aufgefallen ist, werden die Informationen zweimal
auf der Konsole ausgegeben?
Da stellt sich die Frage, ob das "awakeFromNib" mehrmals durchlaufen wird?
Vielen Dank
Michael
mittlerweile bin ich dabei mein Konsolenprogramm zu einem Desktopprogramm um zu schreiben und erlerne nun die Möglichkeiten mit einer Benutzeroberfläche.
Ich habe gelesen, das die Methode "awakeFromNib" immer als erstes ausgeführt wird und meist für die Initialisierung einer Oberfläche benutzt wird.
Daher habe ich Code geschrieben, der mit dem Aufbau des Fensters einige Variablen füllt und nach vorhandenen Dateien Ausschau hält.
Code:
// Führt diesen Code als erstes aus, wenn die GUI gestartet wird
-(void)awakeFromNib {
// Array-Inhalt für das PopUp
NSArray *speicherNummer = @[@"1", @"2", @"3", @"4"];
// Löscht alle "Items" einträge
[popUpSpeicherNummer removeAllItems];
// Fügt das Array in die Lisze hinzu
[popUpSpeicherNummer addItemsWithTitles:speicherNummer];
// Start-Wert setzen
[popUpSpeicherNummer selectItemAtIndex:0];
// Baue Pfade für den Import und Export der Daten
NSArray *dateiMitPfad = baueDateiMitPfad([popUpSpeicherNummer titleOfSelectedItem]);
importDateiMitPfad = [dateiMitPfad objectAtIndex:0];
exportDateiMitPfad = [dateiMitPfad objectAtIndex:1];
NSLog(@"Dateiname mit Pfad für den Import: %@", importDateiMitPfad);
NSLog(@"Dateiname mit Pfad für den Export: %@", exportDateiMitPfad);
// Prüfen, ob eine Benutzerdaten-Datei vorhanden ist?
// Benutzerdaten-Datei ist vorhanden, Daten werden in ein datenArray eingelesen.
NSFileManager *fileManager = [NSFileManager defaultManager];
BOOL fileExists = [fileManager fileExistsAtPath:exportDateiMitPfad];
if (fileExists == TRUE) {
// Import-Datei ist vorhanden, Daten werden in das Daten-Array geladen
NSLog(@"Die Datei %@ ist vorhanden", exportDateiMitPfad);
// Laden den Daten-Arrays von Festplatte (BenutzerDatenX.plist)
NSData *neueDaten = [[NSData alloc] initWithContentsOfFile:exportDateiMitPfad];
datenArray = [NSKeyedUnarchiver unarchiveObjectWithData:neueDaten];
} else {
// Import-Datei ist nichtvorhanden, weiter mit dem importieren von Daten
NSLog(@"Die Datei %@ ist nicht vorhanden", exportDateiMitPfad);
}
// Anzahl der Datensätze im Daten-Array ermitteln
NSLog(@"Das Daten-Array hat %lu Datensätze", [datenArray count]);
}
Soweit funktioniert das ganze, was mir aber aufgefallen ist, werden die Informationen zweimal
auf der Konsole ausgegeben?
Code:
Dateiname mit Pfad für den Import: /Users/michael/Desktop/Daten Programm/DATA1.CSV
Dateiname mit Pfad für den Export: /Users/michael/Desktop/Daten Programm/BenutzerDaten1.plist
Die Datei /Users/michael/Desktop/Daten Programm/BenutzerDaten1.plist ist vorhanden
Das Daten-Array hat 142 Datensätze
Dateiname mit Pfad für den Import: /Users/michael/Desktop/Daten Programm/DATA1.CSV
Dateiname mit Pfad für den Export: /Users/michael/Desktop/Daten Programm/BenutzerDaten1.plist
Die Datei /Users/michael/Desktop/Daten Programm/BenutzerDaten1.plist ist vorhanden
Das Daten-Array hat 142 Datensätze
Da stellt sich die Frage, ob das "awakeFromNib" mehrmals durchlaufen wird?
Vielen Dank
Michael