我目前使用下面的代碼來嘗試在3個視圖控制器之間傳遞文本在UITextField中查看相同的ViewController.h和ViewController.m文件:Xcode:故事板選項卡式應用程序傳回數據
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"NameOfSegue"]) {
ViewController *ibcVC = segue destinationViewController;
ibcVC.myTextField = self.myTextField;
}
}
我有3個視圖控制器按以下順序鏈接:ViewC1 => ViewC2 => ViewC3。
我的UITextField在ViewC2上。
當我點擊按鈕上ViewC2例如,在ViewC3推時,它把數據蠻好ViewC3。但是,假設我目前在ViewC2,我在UITextView中輸入了一些內容,然後點擊Xcode在使用選項卡式視圖應用程序時自動放置的導航上的後退按鈕,它將帶我到ViewC1只是如預期那樣好。但是,如果我按ViewC1上的按鈕,推入ViewC2,我的UITextField中鍵入的數據/文本已被擦除或重置爲空。
所以基本上在這裏是用輕微的數字視覺問題:
數據正確PUSHED EX。
ViewC1 => ViewC2 => ViewC3
數據被擦除;如果我們按下後退按鈕ON NAVIGATION EX。
ViewC1 < = ViewC2
你用什麼方法回到viewc1? dismissmodalviewcontroller? – Pochi 2012-03-12 03:04:40
你不必使用一個。當您使用選項卡式應用程序和鏈接視圖控制器與Push Segue時,Xcode會自動在導航中創建一個後退按鈕。我正在使用Storyboard作爲那個部分,所以一切都在IB中完成,並且在處理推送等時不需要編程。但是,如果我知道Xcode在處理這部分內容時可能會弄清楚。 – John 2012-03-12 03:07:55