Passing Data Forward
Passing data forward to a view controller from another view controller. You would use this method if you wanted to pass an object/value from one view controller to another view controller that you may be pushing on to a navigation stack.
For this example we will have ViewControllerA and ViewControllerB
To pass a BOOL value from ViewControllerA to ViewControllerB we would do the following.
in ViewControllerB.h create a property for the BOOL
in ViewControllerA you need to tell it about ViewControllerB so use an
Then where you want to load the view eg. didSelectRowAtIndex or some IBAction you need to set the property in ViewControllerB before you push it onto nav stack.
This will set isSomethingEnabled in ViewControllerB to BOOL value YES.
Access from appdelegate
[url]http://www.stanford.edu/class/cs193p/cgi-bin/drupal/[/url]
Passing data forward to a view controller from another view controller. You would use this method if you wanted to pass an object/value from one view controller to another view controller that you may be pushing on to a navigation stack.
For this example we will have ViewControllerA and ViewControllerB
To pass a BOOL value from ViewControllerA to ViewControllerB we would do the following.
in ViewControllerB.h create a property for the BOOL
@property(nonatomic) BOOL *isSomethingEnabled;
in ViewControllerA you need to tell it about ViewControllerB so use an
Then where you want to load the view eg. didSelectRowAtIndex or some IBAction you need to set the property in ViewControllerB before you push it onto nav stack.
#import "ViewControllerB.h"
ViewControllerB *viewControllerB = [[ViewControllerB alloc] initWithNib:@"ViewControllerB" bundle:nil];
viewControllerB.isSomethingEnabled = YES;
[self pushViewController:viewControllerB animated:YES];
This will set isSomethingEnabled in ViewControllerB to BOOL value YES.
Access from appdelegate
#include "MyAppDelegate.h"
((MyAppDelegate *)[UIApplication sharedApplication].delegate).myProperty;
[url]http://www.stanford.edu/class/cs193p/cgi-bin/drupal/[/url]
[NSNumber numberWithFloat:32.445]
//is equivalent to:
[[[NSNumber alloc] initWithFloat:32.445] autorelease]
//in Manual Reference counting mode. In ARC or GC mode, you can consider it equivalent to:
[[NSNumber alloc] initWithFloat:32.445]
//Only benefit you might likely get is to try to avoid the autorelease call in MRC mode and replace it with a release call.