SWRevealViewController FrontViewController não está carregando, preso como preto, outras visualizações são boas
Estou tentando fazer a transição do nosso aplicativo para usar o SWRevealViewController para fornecer uma barra lateral em cada lado do aplicativo. Mas, apesar de seguir o código em um dos aplicativos de exemplo, estou recebendo um erro em que o ViewController para a vista frontal não funciona corretamente. O viewDidLoad é chamado, mas tudo permanece preto.
Curiosamente, se em meu viewDidLoad, eu definir a cor de fundo para vermelho da exibição, isso será refletido. Mas as coisas no construtor de interface do storyboard original não são.
O código que eu uso no AppDelegate é:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
UIWindow *window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.window = window;
MainViewController *frontViewController = [[MainViewController alloc] init];
RearViewController *rearViewController = [[RearViewController alloc] init];
UINavigationController *frontNavigationController = [[UINavigationController alloc] initWithRootViewController:frontViewController];
UINavigationController *rearNavigationController = [[UINavigationController alloc] initWithRootViewController:rearViewController];
SWRevealViewController *revealController = [[SWRevealViewController alloc] initWithRearViewController:rearNavigationController frontViewController:frontNavigationController];
revealController.delegate = self;
RightViewController *rightViewController = rightViewController = [[RightViewController alloc] init];
rightViewController.view.backgroundColor = [UIColor greenColor];
revealController.rightViewController = rightViewController;
//revealController.bounceBackOnOverdraw=NO;
//revealController.stableDragOnOverdraw=YES;
self.viewController = revealController;
self.window.rootViewController = self.viewController;
[self.window makeKeyAndVisible];
return YES;
}
#pragma mark - SWRevealViewDelegate
- (id <UIViewControllerAnimatedTransitioning>)revealController:(SWRevealViewController *)revealController animationControllerForOperation:(SWRevealControllerOperation)operation fromViewController:(UIViewController *)fromVC toViewController:(UIViewController *)toVC
{
if ( operation != SWRevealControllerOperationReplaceRightController )
return nil;
if ( [toVC isKindOfClass:[RightViewController class]] )
{
if ( [(RightViewController*)toVC wantsCustomAnimation] )
{
id<UIViewControllerAnimatedTransitioning> animationController = [[CustomAnimationController alloc] init];
return animationController;
}
}
return nil;
}
Este é o Main.Storyboard, que é apenas para o MainViewController:
Quando o aplicativo é carregado, a visualização é apenas preta. Mas posso arrastar da borda esquerda e direita e visualizar as barras laterais como seria de esperar. Portanto, é apenas o FrontView que está ficando preto. Coloquei um NSLog () no ViewDidLoad, que aparece no console, assim como um em - (vazio) loadView {}, que mostra que o View está carregando.
Se eu colocar no viewDidLoad um[self.view setBackgroundColor:[UIColor redColor]]
isso entra em vigor, o que significa que está vinculado à visualização, mas é apenas a visualização dentro do storyboard não está aparecendo. O que é estranho, já que o Storyboard também contém um NavigationController, que aparece (eu acho - a menos que o controlador de navegação seja de outro lugar - o que tenho certeza de que não é).
Alguma idéia sobre o que pode estar causando isso?