好吧,假设我有两个视图控制器“ViewControllerA”和“ViewControllerB”。我正在做的是当在 viewControllerA 中按下按钮时,我的本地服务器返回一个值并将其存储在变量“用户”中。之后,我将此变量传递给 viewControllerB。
实际上我可以成功地完成这两个过程,但不能同时完成。我的意思是我可以接收来自服务器的响应并将其存储在字符串变量中。我通过使用委托方法来做到这一点:
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
所以这边没有问题。
另一方面,我也可以使用以下方法将变量从 viewControllerA 传递给 viewControllerB:
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if([segue.identifier isEqualToString:@"vcSegue"]){
ViewControllerB *controller = (ViewControllerB *)segue.destinationViewController;
controller.stringVariable = @"content of the string";
}
}
我的想法是,当我想将我拥有的字符串变量从服务器传递到 viewControllerB 时,我遇到了一个变量为空的问题。那么如何控制推送动作呢?因为我的理解是-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
应该在- (void)connectionDidFinishLoading:(NSURLConnection *)connection
我的意思之后工作,我应该成功地从服务器获得响应,然后应该执行推送操作,但我不知道该怎么做。感谢您提供任何帮助。