iOS Segue PopOver如何返回传递数据

时间:2016-10-25 11:30:04

标签: ios objective-c xcode uiviewcontroller uipopover

enter image description here 我想从PopOverController发送数据视图控制器(左)(右),我该怎么办?

2 个答案:

答案 0 :(得分:0)

您可以在prepareForSegue方法中传递数据,但首先要为segue添加标识符。 并使用此代码:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
        if ([segue.identifier isEqualToString:@"showPopover"]) {
            NSLog(@"FirstViewController: prepareForSegue");
            PopOverController * popoverVC = segue.destinationViewController;
            popoverVC.myProperty = @"Data to be passed";
        }
    }

答案 1 :(得分:0)

首先创建一个属性,获取另一个viewcontroller的数据。

在你的情况下假设我们想要String数据到第一个viewController,所以我们在第二个中创建一个属性意味着PopOverController

@property (nonatomic, strong) NSString *recipeName;

在您的案例ViewController

中的第一个viewController中调用准备segue方法之后
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    if ([segue.identifier isEqualToString:@"IdentifierOfPushViewController"]) {
        RecipeDetailViewController *destViewController = segue.destinationViewController;
        destViewController.recipeName = @"Hello this passing data"
    }
}