iOS 模态视图

2、模态视图

ModelViewController * modelVC = [[ModelViewController alloc] init];

    modelVC.delegate = self;

    //设置模态视图的转场动画

//    modelVC.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;

    //展示模态视图

    [self presentViewController:modelVC animated:YES completion:^{

//        NSLog(@"%@",self.presentedViewController); 有值

//        NSLog(@"%@",self.presentingViewController); nil

}];

- (void)showName:(NSString *)title {

    [self.button setTitle:title forState:UIControlStateNormal];

}

@protocol ModelViewControllerDelegate <NSObject>

- (void)showName:(NSString *)title;

@end

@property (nonatomic, weak) id<ModelViewControllerDelegate> delegate;

//传值方法1

- (void)doAction:(UIButton *)button {

    

//    NSLog(@"model - %@",self.presentedViewController); nil

//    NSLog(@"model - %@",self.presentingViewController); 有值

    

    ViewController * vc = (ViewController *)self.presentingViewController;

    

    [vc.button setTitle:@"haha" forState:UIControlStateNormal];

    [self dismissViewControllerAnimated:YES completion:nil];

    

}

//传值的方法2

- (void)doAction2:(UIButton *)button {

    

    if ([self.delegate respondsToSelector:@selector(showName:)]) {

        [self.delegate showName:@"haha"];

    }

    [self dismissViewControllerAnimated:YES completion:nil];

    

    ViewController * viewc  = [[ViewController alloc] init];

    viewc.button = nil;

    

}

原文地址:https://www.cnblogs.com/PSSSCode/p/5508416.html