2011-01-17 7 views
0

Entschuldigung für solch einen verwirrenden Titel, aber es ist schwer in ein paar Worten zu erklären, was ich zu erreichen versuche. Ich werde versuchen, das Beste zu erklären, was ich kann. Ok, ich analysiere Daten aus einer XML-Datei. Es ist wie so konstruiert:Wie erstellt man ein Array oder ein verschachteltes Array, um es in UITableView anzuzeigen und nach bestimmten objectAtIndex zu sortieren?

<item1> 
    <subitem1>text</subitem1> 
    <subitem2>text</subitem2> 
    <subitem3>text</subitem3> 
    <subitem4>text</subitem4> 
    <subitem5>text</subitem5> 
</item1> 
<item2> 
    <subitem1>text</subitem1> 
    <subitem2>text</subitem2> 
    <subitem3>text</subitem3> 
    <subitem4>text</subitem4> 
    <subitem5>text</subitem5> 
</item2> 
<item3> 
    <subitem1>text</subitem1> 
    <subitem2>text</subitem2> 
    <subitem3>text</subitem3> 
    <subitem4>text</subitem4> 
    <subitem5>text</subitem5> 
</item3> 
so on and so on... 

Also im Grunde möchte ich in einem UITableView jedes Element in einer separaten Zeile angezeigt werden und jede subitem setzen in sie Eltern ist Zeile/Zelle als ein Etikett die Informationen angezeigt werden darüber Eltern „item“ ist . Auch muss ich in der Lage sein, jedes Element durch eines seiner Unterelemente zu sortieren, also sagen wir subitem4. Wenn subitem4 gleich einer Zeichenfolge ist, dann würde es dieses Element in der UITableView anzeigen, aber wenn subitem4 nicht gleich der Zeichenfolge ist, mit der ich es vergleiche, dann würde dieses Element nicht in der UITableView angezeigt werden. Im Moment habe ich wirklich keinen Arbeitscode, weil ich nicht sicher bin, wie ich diese Arbeit machen soll. Ich weiß nicht, wie ich das machen würde, weil ich jetzt 1 Array mit allen Unterpunkten zusammen habe und ich einfach jeden Unterpunkt aufteile und ihn in getrennte Arrays setze, so dass ich zwischen jeder Elementzeile unterscheiden kann es mit dem folgenden Code:

int totalNames = [Names count]; 
id name = [Names objectAtIndex:1]; 
[listOfItems addObject:name]; 

Ich bin mir ziemlich sicher, dass ich in die falsche Richtung gehe. Es muss einen besseren Weg geben, dies logisch zu tun. Jede Hilfe oder Beratung wäre sehr willkommen. Ich bin damit geistig erschöpft. Vielen Dank.

Antwort

0

Klassen verwenden.

Machen Sie jedes Element zu einer Instanz einer Klasse. Machen Sie jede Unterposition zu einer Eigenschaft der Klasse. dann haben Sie ein Array der Objekte. kann dann basierend auf einer bestimmten Eigenschaft oder was auch immer sortieren.

+0

Wo wäre ein guter Ort, um darüber zu lesen? Irgendwelche Dokumente oder Tutorials, weil ich keine Ahnung habe, wo ich anfangen soll. Vielen Dank. – 0SX

+0

Umm, irgendein Anfangsbuch/Tutorial auf Objective-C sollte helfen, über Klassen zu erklären. Das Buch, das ich bevorzuge, ist Learning Objective-C auf dem Mac von Dalrymple und Knaster (Apress Publishing). Was das XML-Parsing angeht, habe ich keine besonderen Kenntnisse, die hilfreich wären. Wenn Sie überhaupt keine Vertrautheit mit objektorientiertem Design haben, werden Sie es benötigen, um zu verstehen, was Sie bei der iPhone-Programmierung sicher machen. –

Verwandte Themen