[UITableView]Baumstruktur abbilden

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

  • [UITableView]Baumstruktur abbilden

    Hallöchen,

    ich würde gerne eine XML Struktur, welche sich als Baumstruktur abbilden ließe mit einem UITableView abbilden. Ich bin seit heute Morgen auf der suche nach einer fertigen Grundlage, also einer Baumstruktur. Ich habe eigentlich keine Lust meine Zeit in die Entwicklung der gesamten Grundbasis zu stecken, wenn es bereits fertiges gibt. Man soll ja nicht immer wieder das Rad neu erfinden :)
    Das soll um Gottes-Willen nicht bedeuten das ich kein Interesse daran hätte. Wenn es nicht anders geht wäre ich auch dafür offen.

    Ich habe bereits versucht, die Basis selber zu entwickeln, indem ich die einzelnen Knoten, aus denen die Basis ja bestände als Klasse abgebildet habe. Allerdings bin ich nicht so der Designer und die ganzen Berechnungen für die Positionen waren mir irgendwann zu doof. :( *!! Schande über mich !!*

    Wäre für alleErfahrungen, Infos und Links dankbar. Können auch gerne Tutorials sein, die eine ungefähre Richtung weisen.

    Gruß,
    Daniel
    Man kann alles schaffen. Man muss es nur wollen ;)
    www.regetskcob.github.io
  • Etwas fertiges kenne ich nicht. Die Anzeige einer Baumstruktur mit einem NavigationController und einem TableViewController ist jedoch kein Problem.

    Du startest einfach mit einem TableViewController als RootViewController welchem Du die Wurzel des Baums zuweist. Der TableViewController zeigt dann einfach alle direkten Knoten und ggf. Blätter dieser Wurzel an. Wenn Du in dem TableView dann einen Knoten auswählst erzeugst Du einen neuen TableViewController mit dem ausgewählten Knoten als Wurzel und puschst diesen auf den Stack des NavigationControllers.
  • MCDan schrieb:

    Etwas fertiges kenne ich nicht. Die Anzeige einer Baumstruktur mit einem NavigationController und einem TableViewController ist jedoch kein Problem.

    Du startest einfach mit einem TableViewController als RootViewController welchem Du die Wurzel des Baums zuweist. Der TableViewController zeigt dann einfach alle direkten Knoten und ggf. Blätter dieser Wurzel an. Wenn Du in dem TableView dann einen Knoten auswählst erzeugst Du einen neuen TableViewController mit dem ausgewählten Knoten als Wurzel und puschst diesen auf den Stack des NavigationControllers.
    Jaja... ich wills in einer Liste ;)
    Man kann alles schaffen. Man muss es nur wollen ;)
    www.regetskcob.github.io
  • Grundsätzlich ja nicht so schwierig. Denn es gibt ja nicht so viele Positionen zu berechnen.
    Beim Parsen bestimmt das Level/Ebene bzw. die Tiefe das Layout/ die Verschiebung nach Rechts.
    Also benötigst Du beim Parsen, auf jeden Fall eine Variable, in welchem Level Du Dich gerade befindest.
    Mit dieser Variable bestimmst Du das Aussehen (Padding nach Rechts und oder eine bestimmte Grafik)

    Die „Schwierigkeit“ an der ganzen Geschichte ist, die Methoden so zu schreiben, dass diese in jedem Level wiederverwendbar (rekursiv) sind (damit auch eine unbestimmte Menge an Ebenen angezeigt werden können) Hast Du aber nur definitiv nur 2 Ebenen, kannst Du es ja auch einfach „manuell“ (switch/if) lösen.
    Nachtrag: Korrigiere. Das passiert ja alles schon beim parsen. Du brauchst also nur in deinem Dataarray das Level zu hinterlegen. Beim Anzeigen der einzelnen Reihen wird dann auf das Level entsprechend reagiert. Damit kannst Du dann auch mit einem Reload der Tabelle Ebenen ein-/ausklappen.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von entwickler ()