我有一個UIViewController,它具有一個按鈕,可以將UIViewController作爲表單工作表執行模式切換。在表單上是一個取消按鈕,展開後退到原來的UIViewController。這似乎很高興地工作,並駁回表格。iOS展開Segue在嵌入導航控制器時停止工作
只要我選擇原始UIViewController並選擇XCode中的選項將其嵌入到導航控制器中,展開的漸變看起來不再有效,並且模態表單將不再取消。
我確定有一個簡單的解釋,但它目前回避我,所以任何想法歡迎。
謝謝。
我有一個UIViewController,它具有一個按鈕,可以將UIViewController作爲表單工作表執行模式切換。在表單上是一個取消按鈕,展開後退到原來的UIViewController。這似乎很高興地工作,並駁回表格。iOS展開Segue在嵌入導航控制器時停止工作
只要我選擇原始UIViewController並選擇XCode中的選項將其嵌入到導航控制器中,展開的漸變看起來不再有效,並且模態表單將不再取消。
我確定有一個簡單的解釋,但它目前回避我,所以任何想法歡迎。
謝謝。
我不知道你爲什麼會看到你所看到的行爲,我也看到了。它適用於頁面表單和表單表單,但不適用於全屏。然而,放鬆繼續仍然在調用您放入原始控制器(連接放鬆繼續的那個)的方法。所以,你需要做的就是把一條線在該方法:
[self dismissViewControllerAnimated:YES completion:nil];
這已經回答了,但上面沒有給我的完整的解決方案,所以我想我會分享我的。
對我來說,放鬆方法從來沒有被調用,所以我不能做上面描述的。相反,我用IBAction製作了一個簡單的按鈕並將其命名。 Swift示例如下:
@IBAction func cancelToRecipeController() {
self.dismissViewControllerAnimated(true, completion: nil)
print("cancel to recipe controller ran")
}
感謝@rdelmar上面的方法調用!
(這是適用於iOS 9加)
self.dismissViewControllerAnimated(true, completion: nil)
「開除」 並沒有爲我工作,但popToRoot效果很好。
[self.navigationController popToRootViewControllerAnimated:YES];
是的,你是對的,那是行得通的......很奇怪的行爲雖然正確,因爲它適用於全屏幕的罰款嗎?謝謝。 – Darren 2013-04-07 17:25:07
@Darren,是的,這對我來說似乎是一個錯誤。我找不到任何可能表明這是預期行爲的文檔。 – rdelmar 2013-04-07 17:29:54
我在ipad視網膜模擬器上也看到了這一點。國際海事組織這是一個錯誤 – Sam 2015-04-27 10:42:06