Hallo liebes Forum,
und wieder Mal habe ich ein schier unlösbares Problem - zumindest für mich.
Dank dem neuen XCode muss sich der Programmierer bei einfachen Applikationen eigentlich ja um die Verbindungen zwischen ViewControllern und dem Push und Pop von diesen wenig Gedanken machen. Das ist auch kein Problem.
In meiner App habe ich einen NavigationController der ca. 6 - 7 verschiedene ViewController managt. Nun habe ich einen ViewController1,...,ViewController6. Beide haben eigene Header und Implementierungsfiles. Im ViewController1 verwende ich UIGestureRecognizer um das wischen nach links (popViewController) und das wischen nach rechts(pushViewController) zu erkennen. Wenn jetzt nach rechts gewischt wird, wird eine Zufallsvariable erstellt, die das Layout des neu zu ladenden ViewController bestimmt.
Analog sollte das Programm auch beim gepushten ViewController arbeiten. Leider funktioniert nach einmaligem Wischen der gestureRecognizer im neuen View nicht.
Ich habe die Verbindungen mit den IBActions mehrmals geprüft und keinen Fehler gefunden. Muss ich irgendetwas beachten? Die IBActions sehen so aus:
Alles anzeigen
Die Actions sind korrekt im InterfaceBuilder verbunden mit den GestureRecognizern. Leider kommt jedoch nicht einmal eine Aussage über NSLog.
Fällt euch dazu was ein?
und wieder Mal habe ich ein schier unlösbares Problem - zumindest für mich.
Dank dem neuen XCode muss sich der Programmierer bei einfachen Applikationen eigentlich ja um die Verbindungen zwischen ViewControllern und dem Push und Pop von diesen wenig Gedanken machen. Das ist auch kein Problem.
In meiner App habe ich einen NavigationController der ca. 6 - 7 verschiedene ViewController managt. Nun habe ich einen ViewController1,...,ViewController6. Beide haben eigene Header und Implementierungsfiles. Im ViewController1 verwende ich UIGestureRecognizer um das wischen nach links (popViewController) und das wischen nach rechts(pushViewController) zu erkennen. Wenn jetzt nach rechts gewischt wird, wird eine Zufallsvariable erstellt, die das Layout des neu zu ladenden ViewController bestimmt.
Analog sollte das Programm auch beim gepushten ViewController arbeiten. Leider funktioniert nach einmaligem Wischen der gestureRecognizer im neuen View nicht.
Ich habe die Verbindungen mit den IBActions mehrmals geprüft und keinen Fehler gefunden. Muss ich irgendetwas beachten? Die IBActions sehen so aus:
Quellcode
- -(IBAction)weiter {
- self.appDelegate.aktuelleZufallszahl = [[NSNumber alloc]initWithInt:(random()%2)+1 ];
- appDelegate.aktuelleSeite ++;
- NSLog(@"Aktuelle neue Zahl = %i", self.appDelegate.aktuelleZufallszahl.intValue);
- if (self.appDelegate.aktuelleZufallszahl.intValue == 1) {
- Layout1 *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"Layout1"];
- [self.navigationController pushViewController:controller animated:YES];
- } else {
- Layout2 *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"Layout2"];
- [self.navigationController pushViewController:controller animated:YES]; }
- ...
- ...
- ...
- }
- -(IBAction)zuruck {
- if(self.appDelegate.aktuelleSeite == 0) {
- [self.navigationController popViewControllerAnimated:YES];
- } else {
- appDelegate.aktuelleSeite --;
- [self.navigationController popViewControllerAnimated:YES];
- }
- }
Die Actions sind korrekt im InterfaceBuilder verbunden mit den GestureRecognizern. Leider kommt jedoch nicht einmal eine Aussage über NSLog.
Fällt euch dazu was ein?