我希望通过运行带有URL的数组来添加多个存折。问题是循环计数比视图控制器可以呈现的更快。 这是我的代码:
NSArray *passURLArray = [NSArray new];
passURLArray = response;
for (int i = 0; passURLArray.count; i++) {
NSString *passURLString = [NSString stringWithFormat:@"http://test.de%@", [passURLArray objectAtIndex:i]];
NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:passURLString]];
NSError *error;
PKPass *pass = [[PKPass alloc] initWithData:data error:&error];
[[UIApplication sharedApplication] openURL:[pass passURL]];
PKAddPassesViewController *passVC = [[PKAddPassesViewController alloc] initWithPass:pass];
passVC.delegate = self;
[passVC setDelegate:(id)self];
[self presentViewController:passVC animated:YES completion:nil];
}
我收到此错误消息:
尝试提供PKAddPassesViewController:0xca5f7d0 PaymentViewController:0x14882290等待延迟 提示PKAddPassesViewController:0xb169470完成
提前致谢。
答案 0 :(得分:0)
检查你是否在循环的最后一次迭代中。如果是,请为显示设置动画,否则请不要为其设置动画。
也就是说,从用户的角度来看,这是令人讨厌的。您应该考虑一种更好的呈现方式,例如在调用addPassesViewControllerDidFinish:
时在每个显示之间显示列表或动画。