當使用自定義容器視圖控制器時,我不明白爲什麼呈現視圖控制器需要指定from,因爲作爲容器類,它應該已經知道視圖層次結構中有什麼,不是嗎?iOS容器視圖控制器 - 爲什麼transitionFromViewController需要fromViewController?
transitionFromViewController:toViewController:duration:options:animations:completion:
當使用自定義容器視圖控制器時,我不明白爲什麼呈現視圖控制器需要指定from,因爲作爲容器類,它應該已經知道視圖層次結構中有什麼,不是嗎?iOS容器視圖控制器 - 爲什麼transitionFromViewController需要fromViewController?
transitionFromViewController:toViewController:duration:options:animations:completion:
這樣做是這種方式,讓您擁有一個具有與它viewControllers視圖的視圖控制器。 from定義了原始視圖控制器,並使系統能夠適當地定位動畫。
成像您有一個視圖,其中有4個視圖像瓷磚。主視圖控制器可以在它的「子」視圖控制器上連續調用它,並且使用from - > to規範,它不會假定調用者是來自viewController。
容器視圖控制器有時需要將包含的控制器的視圖放入自己認爲的特定子視圖。 (例如,SplitViewController重新實現可能分別具有左側和右側定位視圖,分別保存主控視圖和詳細控制器視圖。)提供fromViewController告訴UIViewController視圖層次結構中應插入新控制器視圖的位置,以及應刪除哪個特定視圖動畫之後。
(違背了另一個答案,該幀的意見沒有爲您設置的。你這樣做,在調用前,並在動畫塊。在文檔中的「Creating Custom Container View Controllers」系統指南有一個很好的例子。)
碰巧,實際上使用transitionFromViewController:...
似乎是可選的。您可以手動管理您的視圖層次結構,有或沒有動畫,並且它可以正常工作。我仍然在形成我的觀點,但我認爲我更願意手動進行,以便更輕鬆地處理其中一家風險投資公司爲零的案例。
這是回答您的問題嗎? – MobileOverlord 2012-02-07 19:38:08