В настоящее время я работаю над приложением, в котором я делаю каталог, который будет содержать различные продукты. До сих пор я сделал свое меню запуска, которое включает три кнопки (одна для каталога, одна для настроек и одна для инструкций). При нажатии кнопки каталога приложение переключается на CatalogueViewController, и именно из этого ViewController должен запускаться каталог.
Помимо меню запуска, я написал приложение для каталога в другом отдельном приложении. Приложение каталога сделано с TabBarController, в то время как меню запуска сделано с обычными ViewController. Мой следующий шаг - объединить эти два приложения, чтобы при нажатии кнопки каталога открывался каталог.
До сих пор, когда я нажимаю кнопку каталога, я создаю экземпляр моего UICatalogueTableViewController, который является подклассом UITableViewController, и загружаю вместе с ним мой CatalogueView.xib.
Файл заголовка ViewController, который управляет отображением вида:
@class MenuViewController;
@class UICatalogueTableViewController;
@class SettingsViewController;
@class InstructionsViewController;
@interface IkeaViewController : UIViewController {
MenuViewController *menuViewController;
UICatalogueTableViewController *catalogueViewController;
SettingsViewController *settingsViewController;
InstructionsViewController *instructionsViewController;
}
@property (retain, nonatomic) MenuViewController *menuViewController;
@property (retain, nonatomic) UICatalogueTableViewController *catalogueViewController;
@property (retain, nonatomic) SettingsViewController *settingsViewController;
@property (retain, nonatomic) InstructionsViewController *instructionsViewController;
-(IBAction)catalogueButtonPressed:(id)sender;
-(IBAction)settingsButtonPressed:(id)sender;
-(IBAction)instructionsButtonPressed:(id)sender;
@end
Метод, который вызывается при нажатии кнопки каталога:
- (IBAction)catalogueButtonPressed:(id)sender{
if (self.catalogueViewController.view.superview == nil) {
if (self.catalogueViewController == nil) {
UICatalogueTableViewController *catalogueController = [[UICatalogueTableViewController alloc]initWithNibName:@"CatalogueView" bundle:nil];
self.catalogueViewController = catalogueController;
[catalogueController release];
}
[menuViewController.view removeFromSuperview];
[self.view addSubview:catalogueViewController.view];
}
}
Внутри моего файла .xib (CatalogueView.xib) я создал объект TabBarController, и у владельца моего файла для его идентификатора класса установлено значение UICatalogueTableViewController, но мне кажется, что я не могу соединить их, так что при запуске TabBarController отображается приложение. Владелец файлов требует просмотра.
При нажатии кнопки настроек или инструкций в моем меню автозагрузки не возникает проблем при создании экземпляра их ViewController и загрузке файлов .xib, поскольку они содержат только одно представление для отображения.
Как перейти из моего меню запуска (обычный ViewController) в мой каталог (TabBarController)?
Заранее спасибо.