2012-04-13 9 views
1

Ich habe Probleme, den Status eines UISwitch von einem BOOL zu setzen. Das ist wahrscheinlich einfach, also wenn jemand helfen könnte, würde ich es wirklich schätzen. Hier ist mein Code, der nicht funktioniert, aber es könnte es klarer machen.iOS - Einstellung des Status von UISwitch auf einem Modal View Controller

RoutingController *routingController = [[RoutingController alloc] initWithNibName:@"RoutingController" bundle:nil]; 

routingController.routingDelegate = self; 

if (audioController->oscOneLFObool == YES) { 
    routingController.oscOneLFOOneSwitch.on = YES; 
} else { 
    routingController.oscOneLFOOneSwitch.on = NO; 
} 


routingController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve; 

[self presentModalViewController:routingController animated:YES]; 
+0

Warum Ihr versuchen, die Bool Status zu ändern? Willst du nur etwas, das zeigt, ob etwas an ist oder nicht? – Sirens

+0

Erhalten Sie Compilerwarnungen? Aktualisieren/ändern Sie den Switch-Status in 'viewWillAppear' /' viewDidAppear' Ihres RoutingControllers? Zeigt 'NSLog (@"% @ ", routingController. OscOneLFOOneSwitch);' an, dass Sie mit der richtigen Instanz sprechen? Last but not least, macht Ihre Fallentscheidung keinen Sinn, ersetzen Sie sie durch 'routingController.oscOneLFOOneSwitch.on = audioController-> oscOneLFObool'; – Till

+0

Noch eine Sache, sind Sie sicher, dass AudioController ein nicht objektiv C-Zeiger (struct, C++ - Objekt, ...) ist? – Till

Antwort

1

Die Ansicht von RoutingController wird nicht geladen, daher ist oscOneLFOOneSwitch null.

Ansicht Last in [self PresentModalViewController: routingController animiert: YES]