无法将用户从第二个视图控制器移动到初始视图控制器

时间:2016-04-30 13:37:46

标签: ios objective-c slidingmenu swrevealviewcontroller

我使用SWRevealViewController创建一个滑动菜单。

当用户按下初始视图控制器的条形按钮时,必须打开新的第二视图控制器。当从第二个视图控制器按下条形按钮时,用户必须再次导航回初始视图控制器。

我使用以下代码将used从第二个视图控制器移动到初始视图控制器。

 SWRevealViewController *revealViewController = self.revealViewController;
    if ( revealViewController )
    {
        [self.sidebarButton setTarget: self.revealViewController];
        [self.sidebarButton setAction: @selector( goBack )];
        [self.view addGestureRecognizer:self.revealViewController.panGestureRecognizer];
    }

但是我收到以下错误消息,

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[SWRevealViewController goBack]: unrecognized selector sent to instance

以下是我的goBack方法

- (IBAction)back:(id)sender {

    [self.navigationController popToRootViewControllerAnimated:YES];

} 

1 个答案:

答案 0 :(得分:1)

实际上你创造了按钮和动作,但你忘了改进$profile的方法,

goBack

<强>更新-2

不在-(Void) goBack { // do something } goBack

goBack:

完整答案

  - (IBAction)back:(id)sender {

[self.navigationController popToRootViewControllerAnimated:YES];

} 

编辑回答

SWRevealViewController *revealViewController = self.revealViewController;
if ( revealViewController )
{
    [self.sidebarButton setTarget: self.revealViewController];
    [self.sidebarButton setAction: @selector( goBack: )];
    [self.view addGestureRecognizer:self.revealViewController.panGestureRecognizer];
}


  - (IBAction)back:(id)sender {

[self.navigationController popToRootViewControllerAnimated:YES];

}