Probleme mit dem Converter aus dem Buch

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Probleme mit dem Converter aus dem Buch

    Hallo Leute!

    Ich habe mir die Tage das Buch Objective-C und Cocoa Band 1 gekauft.

    Die erste Übung habe ich jetzt fertig gemacht. Doch beim Kompilieren taucht auf einmal kein Fenster mehr auf. Das kompilieren war einwandfrei (keine Fehler).
    Was könnte ich falsch gemacht haben???

    Gruß
    Woftschik

    P.S. Das buch ist echt super! Sehr gut beschrieben, wie man was machen soll! Mein Dank gilt dem Autor!
  • Original von woftschik
    HI

    bevor ich Kompiliere: öffnet sich der Debugger Console
    nach dem Kompilieren: passiert nichts außer das ein Klick-Ton zu hören ist

    Hast du mal dein Projekt mit dem zum Download verglichen? Wo genau bist du überhaupt?
    Es hat noch nie etwas gefunzt. To tear down the Wall would be a Werror!
    25.06.2016: [Swift] gehört zu meinen *Favorite Tags* auf SO. In welcher Bedeutung von "favorite"?
  • Hi Amin Negm-Awad

    erstmal Danke für das Buch!
    Genau das was ich jetzt brauche las Anfänger!

    Also es ist so! Ich bin den ganzen Kapitel 2 durchgegangen, bis Table View, hat soweit alles geklappt.
    Danach als ich dann komplett mit dem 2. Kapitel fertig war ging das Fenster nicht mehr auf!

    Was mir aufgefallen ist! Ich habe das neuste Xcode 3.2.1. Das mit den Models Ordner gab es so nicht, deswegen habe ich mir eins erstellt und mir die .xcdatam auch neu erstellt. Doch dann gab es noch ein .xcdatam Datei (siehe Bild). Woher er kommt und wozu der ist, weiß ich nicht. Habe Ihn auch nicht gelöscht den es sieht wichtig aus. mmmmhhhhh?????

    Gruß
    Woftschik
  • Die Unterteilung beim erstellen neuer Projekte und Klassen hat Apple etwas geändert in XCode
    seit das Buch raus kam.

    Sind nun teilweise weniger Unterpunkte, dafür noch Dropdowns mit weiteren Auswahlmöglichkeiten.

    Hier einfach etwas genauer hinschauen was man gerade erstellen soll, dann sollte das keine Probleme bereiten. ;)
  • Hallo !

    Ich hätte da nur noch eine Frage. Wenn man "Speichern unter" klickt dann hat man drei verschiedene Möglichkeiten zu speichern. Kann man irgendwie so einstellen oder Programmieren das man unter Numbers-Dokument speichert?

    Ich wäre euch dankbar für eure Hilfe!

    Gruß
    Waldemar
  • Original von woftschik
    Kann man irgendwie so einstellen oder Programmieren das man unter Numbers-Dokument speichert?

    Wenn ich deine Frage richtig verstehe, dann: ja.
    Aber das willst du nicht. Zumindest noch nicht. Der Aufwand dürfte deinen aktuellen Kenntnisstand weit übersteigen.
    «Applejack» "Don't you use your fancy mathematics to muddle the issue!"

    Iä-86! Iä-64! Awavauatsh fthagn!

    kmr schrieb:

    Ach, Du bist auch so ein leichtgläubiger Zeitgenosse, der alles glaubt, was irgendwelche Typen vor sich hin brabbeln. :-P
  • Danke für die Antwort!

    Das heist ich muss nicht nur die Code Zeile eingeben oder? Gibst den ein Tutorial dafür?
    Ich brauche dies für ein Programm das ich schreiben möchte, dass ich anschließend benutzen möchte. Dies Programm ist sehr einfach aufgebaut (für meine bisherigen Kenntnisse angepasst, natürlich später wird es "ausgebaut") nur der Teil mit dem Numbers-Dokument, ist schwer.

    Deswegen auch die Frage nach Hilfe!

    Gruß
    Woftschik
  • Original von woftschik
    Hat das jemand mal gemacht, speichern unter Numbers-Dokument???

    Gruß
    Woftschik

    Wahrscheinlich McDan. Wie ich hier aber letztens auch erfahren durfte, ist das Format dokumentiert. Und ja: Du bist weit davon entfernt, dass jetzt hinzubekommen.
    Es hat noch nie etwas gefunzt. To tear down the Wall would be a Werror!
    25.06.2016: [Swift] gehört zu meinen *Favorite Tags* auf SO. In welcher Bedeutung von "favorite"?
  • Hallo Leute!!

    Ich spiele gerade mit Xcode und Cocoa rum (und lese parallel auch noch das Buch) um es besser kennen zu lernen.

    Da wäre noch eine Frage bezüglich dem Converter.
    Jetzt habe ich in dem Table View die Faktoren gespeichert!
    Wie kann ich alle gespeicherten Faktoren zusammen rechnen???
    z.B.
    Faktor1 + Faktor2 + Faktor3 + Faktor4 = Ergebnis
    Für alle Faktoren die noch zusätzlich kommen werden soll das auch vorgesehen werden!

    Gruß
    Woftschik
  • Original von woftschik
    Wie kann ich alle gespeicherten Faktoren zusammen rechnen???
    z.B.
    Faktor1 + Faktor2 + Faktor3 + Faktor4 = Ergebnis
    Für alle Faktoren die noch zusätzlich kommen werden soll das auch vorgesehen werden!

    Hallo,

    dafür gibt es mehrere Möglichkeiten, abhängig davon, wie du es haben möchtest.
    (Ich kann da übrigens gar keinen Sinn drin sehen, aber egal.)

    Willst du die Anzeige in einem Textfeld darstellen, dann geht es eigentlich am Einfachsten:
    Du nimmst jedes Element aus deinem Datenmodell, lässt dir dort den Faktor zurückgeben und addierst es zu einer temporären Variable. Anschließend setzt du den Text des Textfeldes auf den Wert. Etwa so:

    Quellcode

    1. // Yeah, I know, you learned to use the ARP. But lets do the retain count manually, just for the sake of it. ;)
    2. NSNumber* totalFactors = [[NSNumber alloc] init]; //RC=1
    3. //By using the ARP make sure to flush it every X times to keep memory usage low, since you may have a lot of objects et al!
    4. for(ConverterObject* myObject in converterObjectArray)
    5. {
    6. // assuming you use some float values
    7. float oldValue = [totalFactors floatValue];
    8. [totalFactors release]; //RC=0
    9. totalFactors=[[NSNumber alloc] initWithFloat:(oldValue + [[myObject factor] floatValue])];
    10. [totalFactors retain]; //RC=1
    11. }
    12. [totalFactorsTextField setValue:[totalFactors stringValue];
    13. [totalFactors release]; //RC=0
    Alles anzeigen


    Willst du das Ganze quasi als letzte Zeile in deiner Tabelle haben (was ich nun ausgesprochen sinnlos fände) darfst du den Core-Data Weg ein wenig verlassen (so du ihn benutzt) und dir Datasource und Delegate für dein TableView basteln.
    Dem erklärst du dann, dass er eine ganze Reihe mehr zeichnen soll als dein Objektarray an Elementen hat und prüfst, wann er diese letzte Reihe zeichnen will.
    Wenn er das möchte, setzt du für die Spalte 'Titel' (oder wie sie in deiner Tabelle heißt) den anzuzeigenden Wert auf @"Total:" und bei der Spalte 'Faktor' (selbe Einschränkung) auf eben das Rechenergebnis.

    Wichtig für dich zum Verständnis:
    Deine Tabelle weiß gar nüscht über die Daten, die in ihr stehen. Ergo brauchst du deiner Tabelle auch keine blöden Fragen stellen. Frag sowas dein Modell.
    Bei einem Array aus reinen Zahlen kannst du vielleicht Schlüsselwörter wie @sum nutzen, um die Summe zu bekommen:
    [arrayContainingNumbers valueForKey:@"@sum"];
    Da du aber Objekte mit mehreren Unterobjekten hast, weiß ich nicht, ob es da einen ähnlich komfortablen Weg gibt. Mir schwebt da vor:
    [arrayContainingNumbers valueForKeyPath:@"factor.@sum"];
    Dürfte aber nicht klappen, da du dich am Objekt hinunterhangelst und die Summe der Elemente von 'factor' versuchst abzugreifen.

    Mit diesem Wissen sollte Folgendes klappen:

    Quellcode

    1. NSMutableArray* numbersArray = [NSMutableArray array];
    2. for(ConverterObject* myObject in converterObjectArray) {
    3. [numbersArray addObject:[myObject factor];
    4. }
    5. [totalFactorsTextField setValue:[numbersArray valueForKey:@"@sum"]];

    Gegebenenfalls musst du da noch umwandeln, da ich nicht weiß, welchen Typ @sum liefert. Aber ich gehe von einem NSString aus.
    Beachte: Das @ vor sum ist wichtig, sonst wird nach dem Schlüssel 'sum' gesucht, und den dürftest du nicht haben. ;)

    Übrigens: Reiner Browsercode, made with K-Meleon on Windows XP.
    Sollte funktionieren, muss aber nicht. :)
    «Applejack» "Don't you use your fancy mathematics to muddle the issue!"

    Iä-86! Iä-64! Awavauatsh fthagn!

    kmr schrieb:

    Ach, Du bist auch so ein leichtgläubiger Zeitgenosse, der alles glaubt, was irgendwelche Typen vor sich hin brabbeln. :-P