setViewControllers funktioniert nicht

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

  • setViewControllers funktioniert nicht

    In meinem Programm soll, wenn ein Button gedrückt wird, die TabBar sich um den ViewController "TestViewController" erweitern. Durch ein Klick auf den Button wird also folgende Methode ausgeführt:

    - (IBAction)TestButton:(id)sender //Das hier soll kein Smiley sein, der wurde anscheinend durch : und ( hinzugefügt

    {

    AppDelegate *aAppDelegate = [[AppDelegate alloc] init];



    [aAppDelegate newTabBar];

    }


    an AppDelegate wird also gesendet, es soll die Methode "newTabBar" ausführen. Dort wird der TabBar zu den beiden Standard-ViewController (FirstViewController, und SecondViewController) der TestView Controller mit einem Array hinzugefügt. Die Methode lautet:



    - (void)newTabBar

    {

    UIViewController *viewController1 = [[FirstViewController alloc] initWithNibName:@"FirstViewController" bundle:nil];

    UIViewController *viewController2 = [[SecondViewController alloc] initWithNibName:@"SecondViewController" bundle:nil];

    UIViewController *viewController3 = [[TestViewController alloc] initWithNibName:@"TestViewController" bundle:nil];



    NSMutableArray *TabBarArray;



    [TabBarArray addObject:viewController1];

    [TabBarArray addObject:viewController2];

    [TabBarArray addObject:viewController3];



    [self.tabBarController setViewControllers:TabBarArray animated:YES];

    }


    Doch bei mir funktioniert das nicht, es passiert einfach nichts, wenn man auf den Button klickt. Wahrscheinlich habe ich irgendwas falsch gemacht oder vergessen, ich hoffe mir kann jemand helfen.
  • DroneDeveloper schrieb:

    an AppDelegate wird also gesendet, es soll die Methode "newTabBar" ausführen.

    Falsch! Du sendest an eine neue Instanz von AppDelegate.
    Stattdessen solltest du [UIApplication sharedApplication].delegate verwenden.
    Und die Code-Tags.
    Das heißt? Wo soll ich das hinschreiben? (Entschuldigung, ich bin noch nicht so erfahren im Programmieren)