2 verschiedene DetailViews aus TableView laden

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

  • 2 verschiedene DetailViews aus TableView laden

    Hallo Leute,

    ich bin jetzt schon seit ungefähr einer Woche an einem Problem und komme nicht weiter, daher habe ich mich entschieden mein Problem hier zu schildern. Es ist etwas komplizierter (zumindest finde ich das, bin 15 und programmiere noch nicht lange) und um mich besser zu verstehen, habe ich eine mini-Version meines Projektes erstellt und sie angehängt. Ich hoffe ihr könnt mir helfen und vielleicht sogar den passenden Code schreiben, da ich aus der Antwort selbst die Lösung des Problems nicht schaffe. ISt viel Aufwand mit zu helfen, aber ich hoffe es klappt.

    Zum Problem:

    Also ich habe im Grunde genommen einen MainViewController, in diesem sind 2 weitere Views (View1 mit einem MapView, View2 mit einem TableView). Mithilfe eines SegmentedControl lässt sich zwischen View1 und View2 hin und herschalten. In dem MapView sind 2 Punkte(Rot, Blau), und wenn man auf sie klickt kommt man auf jeweils einen DetailView(RotDetailView, BlauDetailView). In dem TableView sind die zwei Cells Rot und Blau. Jetzt versuche ich, dass wenn man auf sie klickt auch auf den jeweiligen DetailView kommt, aber das kriege ich als nicht hin. Eine Anmerkung noch der TableView wird in einem extra TableViewController bearbeitet, aber die .xib ist die vom MainViewController.

    ich denke, man muss sie das angehängte Projekt runterladen, um mich zu verstehen :D

    Liebe Grüße
    L.Capps
  • in der Methode didSelectRowAtIndexPath schaust du welche row selectiert wurde z.B. mit einer IF Bedingung und führst je nach Bedingung die dementsprechende Anweisung aus.

    Rote Zelle geklickt -> Rotes View Laden

    Blaue Zelle geklickt -> Blaues View Laden

    Durch den Parameter IndexPath (IndexPath.row) weisst du welche Zeile geklickt wurde Oo
    Meine Beiträge :whistling: stehen unter der Beerware Lizenz!
  • Quellcode

    1. - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
    2. {
    3. [tableView deselectRowAtIndexPath:indexPath animated:YES];
    4. if ????
    5. }


    Ich hoffe jetzt, dass du weißt was ich meine. Ich weiß einfach nicht wie, das Statement bzw. die ganze if-Bedinung lauten muss. Sorry ich habe es bis zu diesem Teil hinbekommen, aber bei diesem Teil steh ich total aufm Schlauch.
  • rofl - dein Beispiel Rot (Zeile 1) und Blau (Zeile 2)....

    dann machst einfach

    Quellcode

    1. if(indexPath.row == 0) //ZEILE 1
    2. {
    3. //LOAD DETAIL VIEW ROT
    4. }
    5. if(indexPath.row == 1) //ZEILE 2
    6. {
    7. //LOAD DETAIL VIEW BLAU
    8. }


    ob nun 2 IFs oder IF-ELSE oder IF-ELSEIF-ELSE ist ja wohl aktuell egal ^^

    sollte die Zeile unwichtig werden, kannst du noch immer ein Array mit dem eigentlichen Content durlaufen oder was auch immer!
    Meine Beiträge :whistling: stehen unter der Beerware Lizenz!