當我從視圖控制器1傳輸到視圖控制器2,然後是視圖控制器3時,我的NSString數據正在丟失。但是,當我從視圖控制器1傳輸到視圖控制器3時,它工作正常。所以我從viewcontroller 1切換到視圖控制器2的方式正在導致我由於某種原因失去nsstring數據。我會後我的代碼下面,但我的猜測是,我需要做一些視圖控制器2通過控制器後,NSString數據並未提供
viewcontroller1
-(void)button{
stringEntered=textField.text;
ViewController2 *vc2 = [[ViewController3 alloc] init];
vc2.string = [[NSString stringWithString:textField.text] retain];
[self.navigationController pushViewController:vc2 animated:YES];
}
視圖 - 控制2
-(void)button{
ViewController3 *vc3 = [[ViewController3 alloc] init];
[self.navigationController pushViewController:vc3 animated:YES];
}
Viewcontroller3
NSString *emailBody = [NSString stringWithFormat:@"%@",string];
你如何在你的控制器中聲明「字符串」?另外,不需要使用stringWithString或stringWithFormat,因爲textField.text和string都是字符串。 – rdelmar
您沒有任何代碼可以將字符串傳遞給vc2中的按鈕方法中的vc3,那麼您爲什麼期望它能通過? – rdelmar
因此,沒有任何簡單的方法可以將它保留在第二個視圖控制器中?基本上我猜你必須將數據從vc 1傳遞給vc2,然後將數據傳遞給vc3 –