Итак, я пишу приложение, которое будет читать канал JSON. В моем приложении: didFinishLaunchingWithOptions я пишу некоторый код для загрузки строки JSON и сохранения ее в локальной переменной NSString. Затем я передам эту строку в ListingsViewController (который является корневым VC NavigationController). Когда я распечатываю данные JSON в ListingsViewController, он показывает мне (ноль), что заставляет меня думать, что viewDidLoad загружается раньше - что кажется нелогичным?
Итак, вот мое приложение: didFinishLaunchingWithOptions
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Grab the feeds
NSURL *jsonURL = [NSURL URLWithString:@"http://www.shoofeetv.com/iphonexml/view/all_channels.json"];
NSString *jsonData = [[NSString alloc] initWithContentsOfURL:jsonURL];
// Pass jsonData to the ListingsViewController
ListingsViewController *listingsViewController = [[ListingsViewController alloc] initWithNibName:@"ListingsViewController" bundle:nil];
listingsViewController.jsonData = jsonData;
[listingsViewController release];
// Display the navigation controller
self.window.rootViewController = self.navigationController;
[self.window makeKeyAndVisible];
return YES;
}
Мой метод viewDidLoad выглядит следующим образом:
- (void)viewDidLoad {
self.navigationItem.title = @"Listings";
UIBarButtonItem *checkinButton = [[UIBarButtonItem alloc]
initWithTitle:@"Check In"
style:UIBarButtonItemStylePlain
target:self
action:@selector(switchView)];
self.navigationItem.rightBarButtonItem = checkinButton;
[checkinButton release];
NSLog(@"%@", self.jsonData);
[super viewDidLoad];
}
Обратите внимание, что распространенным решением является обеспечение того, чтобы делегат приложения в MainWindow.xib был подключен к владельцу файла. Моя уже подключена.
Буду признателен за любую помощь!
Спасибо всем.