NSDictionaries sind nicht sortiert. allKeys gibt Schlüssel in zufälliger Reihenfolge zurück. Es gibt keine Garantie, dass es die gleiche Reihenfolge zweimal zurückgibt, so dass dieser Ansatz inhärent fehlerhaft ist. Und diese Zeile:
long time = (long)[[tempPosts allKeys] objectAtIndex:section];
ist absolut völlig falsch. Sie wählen einen der Schlüssel des Wörterbuchs aus, der ein Zeiger auf ein Objekt ist, am ehesten wie ein NSString *. Sie werfen dies zu lang - aber eine Adresse eines NSObject zu lange zu übertragen, gibt Ihnen nur sinnlose Bits.
Ich schlage vor, Sie beschreiben, was Sie eigentlich wollen.
Und NSDictionary ist völlig ungeeignet für Ihr Datenmodell, wie Sie vielleicht herausgefunden haben. Nehmen Sie das Wörterbuch und wandeln Sie es in ein Objekt um, das enthält, was Ihre Anwendung benötigt.
NSMutableDictionary müssen beide Schlüssel und Werte folgen eine NSObject. Was ist der genaue Objekttyp Ihres Schlüssels? Ist es wirklich eine Schnur? Wenn dies nicht der Fall ist, hilft Ihnen das Übergeben eines NSString nicht, den zugeordneten Wert abzurufen. –
Ich denke, anstatt so viel Konvertierung zu tun, sollten Sie einfach verwenden, 'NSString * key = [[tempPosts allKeys] objectAtIndex: Abschnitt];' und dann '[[tempPosts objectForKey: key] count];' sehen, ob es funktioniert. – iphonic
es Typ ist 'lang' – codebot