• Wieder einmal haben uns unsere Apfeltalker tolle Fotos zur Abstimmung eingesandt. Welches ist Euer Favorit? Stimmt mit ab! Hier geht es zur Abstimmung --> Klick
  • Es ist bereits Apfeltalk-Tradition und wir möchten sie auch in diesem Jahr fortsetzen: Unser Apfeltalk-Weihnachtslogo-Wettbewerb hat begonnen! Gestaltet für uns das Weihnachtsbanner, das im Monat Dezember bis zum Weihnachtsfest unsere Webseite schmücken soll. Lasst Eurer Kreativität freien Lauf! Hier geht es zum Wettbewerb --> Klick

ViewControll durch einen Button klick wechseln

AppleDevo

Jonagold
Registriert
15.03.14
Beiträge
23
Hallo

Ist es möglich durch einen Button klick die ControllView zu wechseln.
Was ich meine ist nicht die "übliche" vergehensweise, sondern durch eine IBAction Funktion zu einer bestimmten View zu wechseln.

Gruss
 
Hallo

Wenn du Storyboards benutzt ist das die von Apple vorgesehene Möglichkeit:
[self performSegueWithIdentifier:@"identifier goes here" sender:self];
​
Wenn du einen NavigationController hast ist das die einfachste Möglichkeit:
ViewController *viewController = [[ViewController alloc] init];
[self.navigationController pushViewController:viewController animated:YES];​

Andernfalls kannst du diesen Code benutzen:
ViewController *viewController = [[ViewController alloc] init];
[self presentViewController:viewController animated:YES completion:nil];

​
Gruss
Joel
 
Danke für die Antwort.
Ich verwende den normalen Storyboard mit zwei ViewController.

Wenn ich dich richtig versteh muss ich in der

.h

-(IBAction)weiter:(id)sender;

.m

-(IBAction)weiter:(id)sender{

[self performSegueWithIdentifier"Haus" sender:self]

}

einfügen. Ich habe dem zweiten Viewcontroller eine Storyboard ID zugewiesen und die "weiter" Funktion mit einem Button verknüpft.

Leider möchte es trotzdem nicht funktionieren. Bitte um Hilfe.

Gruss

PS: Es ist mit der Zeit eine weitere Frage aufgetreten. Und zwar habe ich in der ViewController Class zwei IBAction erstellt. Nun bräuchte ich aber die Funktion auch in einer zweiten Class "Kategorie". Wie kann ich die beiden Classes verbinden, oder ist es überhaupt möglich?
 
Hallo

Tut mir leid ich habe mich zu ungenau ausgedrückt, [self performSegueWithIdentifier"Haus" sender:self] funktioniert nur wenn du ein Segue mit Identifier Haus hast.
Code:
           UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Der Name deines Storyboards" bundle:nil];

            UIViewController *mvc = [storyboard instantiateViewControllerWithIdentifier:@"Storyboard ID des zweiten Viewcontrollers"];

           [selfpresentViewController:mvc animated:YES completion:nil];

            NSLog(@"Launched Home Page");