从NIB子视图按钮执行视图segue

时间:2014-05-14 04:02:45

标签: objective-c segue nib

我有一个主视图(包含配置文件的表视图),它有一个导航控制器。在导航栏中,我有一个"菜单"酒吧按钮。当用户单击条形按钮时,菜单视图将作为子视图添加到主视图中。此菜单视图(子视图)有一个按钮。此按钮将用于转换到我的故事板中的另一个视图(而不是子视图)。

我在菜单视图的.m文件中的此代码无效:

- (IBAction)button:(UIButton *)sender {
    [AlertStatus alertStatus:@"" :@"Message1" :0];
    [sender performSegueWithIdentifier:@"segueTo1" sender:sender];
}

我得到了 "没有可见的@interface为' UIButton'声明选择器performSegueWithIdentifier:sender:'" 错误消息

有人可以帮忙吗?我也听说过使用代表进入主视图,但我没有经验。

2 个答案:

答案 0 :(得分:2)

这很容易解决。 您必须从视图控制器执行segue,而不是按钮。

- (IBAction)button:(UIButton *)sender {
    [AlertStatus alertStatus:@"" :@"Message1" :0];
    [self performSegueWithIdentifier:@"segueTo1" sender:sender];
}

此代码可以使用

答案 1 :(得分:0)

我不知道使用segue但您也可以使用以下代码。如果没有必要使用segue,那么你可以使用这段代码。

UIStoryboard *sb = [UIStoryboard storyboardWithName:@"Main_iPhone" bundle:nil];
OtherViewController *mvc = [sb instantiateViewControllerWithIdentifier:@"OtherViewController"];        
[self.navigationController pushViewController:mvc animated:YES];