Бьюсь об заклад, ваш объект WebsiteViewController не был создан.NSLog(@"%@", websiteViewController);
Бьюсь об заклад, его ноль!: p Вам нужно создать объект - я не знаю, как это сделать с помощью конструктора интерфейсов.
В любом случае, вы используете старый способ переключения между контроллерами представления.Новый / лучший способ - использовать контроллер навигации, чтобы сделать это так:
-(IBAction)loadWebsite:(id)sender{
[self.navigationController pushViewController:websiteViewController animated:YES];
}
Но это не сработает, если вы не настроили контроллер навигации, чего я не знаю, какделать в конструкторе интерфейсов.Вот почему я ненавижу конструктор интерфейсов и считаю, что вы должны перестать учиться с ним!: p
Без компоновщика интерфейса это то, что вы должны сделать:
В вашем делегате приложения .h файл добавьте это вверху:
#include "IntroductionViewController.h"
Затем включите это сдругие @propertys в коде:
@property (nonatomic, retain) UINavigationController *navController;
Теперь в файле подкачки делегата приложения .m приложение завершило запуск с параметрами:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Override point for customization after application launch.
[self.window makeKeyAndVisible];
// lets make the navigation controller by setting up a view controller first.
IntroductionViewController *viewController = [[IntroductionViewController alloc] initWithNibName:nil bundle:nil];
viewController.title = @"Home";
navController = [[UINavigationController alloc] initWithRootViewController:viewController];
[navController setNavigationBarHidden:NO]; // set to yes to hide the title bar
[viewController release];
[self.window addSubview:navController.view];
return YES;
}
Это даст вамконтроллер навигации (вы можете легко скрыть строку заголовка ... - см. комментарии).И покажите первый контроллер вида (ВведениеViewController).
Теперь будет работать код, который я вам дал выше.[self.navigationController pushViewController:websiteViewController animated:YES];
.Это дает viewController для navigationController, а navigationController сам выполняет все операции добавления и удаления представлений и тому подобное!
И вам вообще не приходилось использовать конструктор интерфейса!: p (ну ... теперь вы должны научиться создавать представления без перетаскивания!).
В любом случае ... надеюсь, это помогло.