2013-07-20 3 views
1

Я пытаюсь реализовать JASliding панели, используя сюжетные доски я создал левую и центральную панель, а также подкласс для класса jasliderJASlidingpanels ошибка раскадровка пример-контроллер Корневой

#import "RootViewController.h" 
@interface RootViewController() 
@end 
@implementation RootViewController 
-(void) awakeFromNib 
{ 
[self setLeftPanel:[self.storyboard 
instantiateViewControllerWithIdentifier:@"leftViewController"]]; 
[self setCenterPanel:[self.storyboard 
instantiateViewControllerWithIdentifier:@"centerViewController"]]; 
[self setRightPanel:nil]; 
} 
@end 

я хочу только используйте левую и центральную панели. я получаю это в выходной

JASidePanelSB [31404: c07] окно приложения, как ожидается, иметь контроллер представления корня в конце запуска приложения

я создал зритель в раскадровке с идентификаторами и зрителем, связанными с RootViewController, является начальное представление со стрелкой на левой стороне.

есть что-то еще, что я не хватает

ответ

0

Хорошо, поэтому я понял. Поскольку я начал проект как пустое приложение, XCode добавил код для размещения нового объекта UIWindow, который мешал и выдавал ошибку. Если кто-то чудеса, убедитесь, что этот код не в didFinishLoadingWithOptions методе

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
// Override point for customization after application launch. 
self.window.backgroundColor = [UIColor whiteColor]; 
[self.window makeKeyAndVisible]; 
0

Я думаю, что ваши проблемы лежат в методе. Вы звоните awakeFromNib, но используете раскадровки. Попробуйте поместить свой код в так:

#import "RootViewController.h" 
@interface RootViewController() 
@end 
@implementation RootViewController 
-(void)viewDidLoad 
{ 
    [self setLeftPanel:[self.storyboard 
    instantiateViewControllerWithIdentifier:@"leftViewController"]]; 
    [self setCenterPanel:[self.storyboard 
    instantiateViewControllerWithIdentifier:@"centerViewController"]]; 
    [self setRightPanel:nil]; 

    [self.sidePanelController showCenterPanelAnimated:YES]; 

    [super viewDidLoad]; 
} 
@end 

Обратите внимание, что я использую viewDidLoad и не awakeFromNib, потому что awakeFromNib вызывается, когда сам контроллер разархивирован от кончика пера. viewDidLoad вызывается, когда представление создается/распаковывается.

У вас нет нипов.

+0

нет я все еще получаю те же окна приложений, как ожидается, иметь контроллер представления корня в конце вывода сообщения запуска приложения. что у меня есть инструкции на сайте [link] (https://github.com/gotosleep/JASidePanels#example-2-storyboards) –

+0

Вы сделали это? 2. Убедитесь, что #import "JASidePanelController.h" в MySidePanelController.h ". Я не вижу, сделали ли вы это или нет. – CaptJak

+0

well RootViewController - это подкласс JASidePanelController, поэтому он автоматически импортируется, а также проверял, что он был импортирован. –

Смежные вопросы