Я немного запутался, когда мне следует использовать файл NIB и когда мне следует использовать код.
Вот моя проблема:
У меня есть приложение на основе навигации с RootController и его NIB-файлом.
Файл NIB RootController содержит TableView.
Когда я нажимаю на ячейку, я инициализирую новое соединение с запросом на загрузку контента.
После завершения загрузки соединения я создаю новый postViewController (custom) из файла NIB и помещаю его в стек viewController navigationController следующим образом:
PostViewController *postViewController = [[PostViewController alloc] initWithNibName:@"PostViewController" bundle:[NSBundle mainBundle]];
[postViewController.webView setDelegate:self];
postViewController.postContent = [[postsData objectForKey:@"post"] objectForKey:@"content"];
[self.navigationController pushViewController:postViewController animated:YES];
[PostViewController release];
Затем, как вы можете видеть, я пытаюсь установить rootViewController в качестве делегата для webView, чтобы иметь возможность перехватывать щелчок по ссылке и помещать новый ViewController в стек. Мне нужно, чтобы это новое представление имело панель навигации с кнопкой возврата.
Проблема: похоже, что setDelegate не работает, потому что webView: shouldStartLoadWithRequest: navigationType никогда не вызывается!
Полагаю, мне следует установить делегата в файле NIB, но я понятия не имею, как. Файл NIB из PostViewController не знает о RootViewController ...
Вот скриншоты файлов NIB:
Если вам нужно больше деталей, просто спросите меня.
Большое спасибо ... за то, что помог мне не биться в голову еще один день:)