来自modal segue的SWRevealViewController

时间:2015-05-06 20:14:44

标签: ios objective-c swrevealviewcontroller

我在关注AppCoda' s tutorial之后使用了SWRevealViewController。我能够在教程中使用它没有任何问题,但无法使其适应我自己的应用程序。原因是在我的应用程序中,我没有从初始屏幕使用SWRevealVC。触发SWRevealVC的菜单按钮不会出现,直到主屏幕出现模态偏移。因此,从主场景到新场景(RecipeDetailVC)的模态segue包含左上角的菜单按钮以触发SWRevealVC。 RecipeDetailsVC将其自定义segue的标识符设置为前视图控制器(sw_front)。点击菜单按钮没有任何反应,没有错误或崩溃,但它没有做任何事情。我确定原因是RevealVC悬在那里,你可以在故事板中看到。另外,我确保将其类设置为SWRevealVC类。此外,在RecipeDetailsVC(前端VC)中,viewDidLoad中的(revealViewController)代码从不评估当点击菜单按钮时没有发生任何事情的原因。我确定这与悬挂的揭示VC有关,但不确定如何纠正它。谁能告诉我如何纠正这种情况?谢谢

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    NSLog(@"viewDidLoad...");
    SWRevealViewController *revealViewController = self.revealViewController;
    if (revealViewController)
    {
        NSLog(@"DEBUG: We have a revealVC!");
        [self.sidebarButton setTarget:self.revealViewController];
        [self.sidebarButton setAction:@selector(revealToggle:)];
        [self.view addGestureRecognizer:self.revealViewController.panGestureRecognizer];
    }
}

enter image description here

1 个答案:

答案 0 :(得分:1)

SWRevealViewController应该是前视图控制器和后视图控制器的根视图控制器。尝试对SWRevealViewController执行模态segue,而不是RecipeDetailVC导航控制器。