在容器视图中使用UIButton连接到父视图

时间:2014-09-21 04:11:39

标签: ios iphone uiview uiviewcontroller uibutton

我有一个带有自定义标签栏和容器视图的主VC。我在标签栏中有三个按钮,使用自定义segue链接到3个不同的视图,可以完美地切换视图。

在我的一个孩子视图中,我有一个按钮。我希望该按钮连接到父视图,但按下按钮时应用程序崩溃。

我查看了几个答案,但只找到了有关使用父视图中的按钮切换子视图的问题的答案,例如:Linking child view controllers to a parent view controller within storyboard

我的结构如下:

主VC - >主VC中的子VC - >按钮

按钮 - >自定义Segue - > Nav VC中嵌入的新主VC

当我按下子VC中的按钮链接到新的主VC时,它会崩溃。

这是我的prepareForSegue代码:

H档:

//Name of the parent class linking to
@property (weak, nonatomic) FillUpEntryViewController * fueVC;

M档案:

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    if ([segue.identifier isEqualToString:@"NewEntrySegue"]) {
        self.fueVC = segue.destinationViewController;
    }
}

非常感谢任何帮助。我不认为它应该像现在这样困难,但我对此相对较新。

编辑: 子视图有自己的类,其中包含上面的segue代码。只是为了消除任何困惑。

Flow of Events

1 个答案:

答案 0 :(得分:0)

我不知道如果我不理解你,你可以创建一个dismiss segue并通过它加入你的故事板中的两个视图,或者只是在你的行动中使用代码:

import“DismissSegue.h”

.h文件

#import <UIKit/UIKit.h>

@interface DismissSegue : UIStoryboardSegue


@end

.m文件

@implementation DismissSegue

-(void)perform{
    UIViewController *sourceViewCOntroller = self.sourceViewController;
    [sourceViewCOntroller.view endEditing:YES];
    [sourceViewCOntroller.presentingViewController dismissViewControllerAnimated:YES completion:nil];
}

@end

我希望它可以帮到你。