SWRevealViewController和其他视图控制器

时间:2015-12-25 20:21:11

标签: ios objective-c xcode sidebar swrevealviewcontroller

在我的应用中,我使用SWRevealViewController作为侧边菜单,我已正确设置。我的问题是,从具有侧面菜单的视图控制器,我有一个segue转到另一个不使用SWRevealViewController的视图控制器。然后在操作上返回SWRevealViewController。 (测验控制器)。由于某种原因,菜单按钮停止显示菜单。以下是发生的事情:

Gif

(抱歉质量不好,使用quicktime记录,然后在线转换为gif)。

这是我的故事板布局: pic

segue to quiz控制器是推送。

如何让按钮工作?

1 个答案:

答案 0 :(得分:0)

我刚才想出了答案。您所要做的就是为原始控制器创建一个展开segue。如果您不知道如何操作,请继续。

  • 将展开方法添加到原始控制器

我的控制器名为QuizViewController,您的控制器可能与众不同。

// In QuizViewController.m
...
- (void)unwindToQuiz:(UIStoryboardSegue *)segue
{
    // Get data from sender by segue.sourceViewController
}

当segue发生时将调用此方法,此处的代码类似于prepareForSegue方法。

  • 接下来在故事板中创建segue

在控制器中,右键单击从视图控制器拖动(按住Control键并单击)以退出并选择-unwindToQuiz方法。

现在从侧边栏中选择你的segue,然后在segue中添加一个标识符。

**提示:如果您不想以编程方式启动segue,请从UI元素(如UIButton)拖动并拖动以退出。不需要标识符)。

启动segue do` [self performSegueWithIdentifier:@" yourIdentfier"发件人:自];

你已经完成了!它不适用于推送,因为revealViewController属性变为零