2017-01-10 52 views
0

之前我使用SWRevealViewcontroller使用此sampleLoginviewcontroller SWRevealviewcontroller用故事板目标C

我想SWRevealViewcontroller前添加loginviewcontroller。

我已经试过什么:

  1. 新增loginviewcontroller在Storyboard。将其设置为InitialViewcontroller

  2. 内部按钮动作。

    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; 
    MapViewController *rootViewController = [storyboard instantiateViewControllerWithIdentifier:@"MapViewController"]; 
    
    UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:rootViewController]; 
    [navController setViewControllers: @[rootViewController] animated: YES]; 
    
    [self.revealViewController setFrontViewController:navController]; 
    [self.revealViewController setFrontViewPosition: FrontViewPositionLeft animated: YES]; 
    

但它无法正常工作。请帮助

+1

loginView之后,它进入下一个视图控制器,并在明年的ViewController你想SWReavelViewController ..我说的对@iosdeveloper ..? –

+0

@SurajSukale是的。我要那个。 –

回答

1

viewController1

viewController2 *viewController2=[self.storyboard instantiateViewControllerWithIdentifier:@"viewController2Id"]; 
[self.navigationController pushViewController: viewController2 animated:YES]; 

viewController2

-(void)pushAfterLoginScreen 
{ 
SidebarViewController *sidebarmemu =(SidebarViewController*) [self.storyboard instantiateViewControllerWithIdentifier:@"SidebarController"]; 

viewController3* viewController3 = (viewController2*)[self.storyboard instantiateViewControllerWithIdentifier:@"viewController2Id"]; 

SWRevealViewController *revealController; 
UINavigationController *frontNavigationController; 
UINavigationController *rearNavigationController; 
frontNavigationController =[[UINavigationController alloc]initWithRootViewController: viewController2]; 
rearNavigationController =[[UINavigationController alloc]initWithRootViewController:sidebarmemu]; 
revealController = [[SWRevealViewController alloc] initWithRearViewController:rearNavigationController frontViewController:frontNavigationController]; 
revealController.delegate = self; 
self.swcontroller =revealController; 
AppDelegate *app =(AppDelegate *)[[UIApplication sharedApplication]delegate]; 
app.window.rootViewController =self.swcontroller; 
} 
+0

谢谢你的回复。什么是self.swcontroller? –

+0

@property(强,非原子)SWRevealViewController * swcontroller; –

+0

谢谢你的回答。它有助于 –

1

SWRevealViewcontroller这已经是你需要控制成功登录后使用presentViewController方法,通过故事板ID设置高达SWRevealViewcontrollernavigationController传递给SWRevealViewcontroller和使用下面的代码浏览您的应用的navigationController嵌入:

UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil]; 
UIViewController *vc = [mainStoryboard instantiateViewControllerWithIdentifier:@"navContStoryboardID"]; 
[vc setModalPresentationStyle:UIModalPresentationCustom]; // optional 
[vc setModalTransitionStyle:UIModalTransitionStyleCrossDissolve]; // optional 
[self presentViewController:vc animated:YES completion:nil]; 

希望这可以帮助你。