【问题标题】:how to pass data to next view controller while still loading data from previous view?如何在仍从前一个视图加载数据的同时将数据传递给下一个视图控制器?
【发布时间】:2016-03-10 09:45:22
【问题描述】:

当前一个视图控制器在后台加载我需要的数据时,如何将数据传递给下一个视图控制器。

有没有一种方法可以在加载完成后将数据发送到第二个视图控制器,同时已经在第二个视图上,如果这有意义的话?

我尝试了 Prepare segue,但这不起作用。

我也试过这个

[photo saveInBackgroundWithBlock:^(BOOL succeeded, NSError * _Nullable error) {
        if (succeeded) {
            NSLog(@"%@",photo.objectId);
            _PFObjectId = photo.objectId;

            AddProductDetailsViewController *sendData = [[AddProductDetailsViewController alloc]init];
            sendData.objectId = photo.objectId;

        }
    }];

希望一旦完成它会发送 photo.objectId 但它不是

【问题讨论】:

    标签: ios objective-c model-view-controller


    【解决方案1】:

    我通过添加我需要在 prepareForSegue 中发送的完整方法来让它工作,现在它可以工作了。

    【讨论】:

      【解决方案2】:
      [photo saveInBackgroundWithBlock:^(BOOL succeeded, NSError * _Nullable error) {
          if (succeeded) {
              NSLog(@"%@",photo.objectId);
              _PFObjectId = photo.objectId;
              //You should not alloc it again once the view controller is pushed or presented .If it is already in stack
              AddProductDetailsViewController *sendData = (AddProductDetailsViewController *)[[self.navigationController viewControllers] lastObject];
      
              //instead of sending object Directly like this sendData.objectId = photo.objectId  create a method and call after completion
              [sendData pushObjectId:photo.objectId];
          }
      }];
      

      希望对你有帮助

      【讨论】:

        猜你喜欢
        • 2020-08-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-05-09
        • 2015-10-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多