2010-09-16 84 views

回答

0

後期編輯從OP地址評論:

在未來的應用程序,你應該避免任何可能直接在它是一個UIWindow作用。然而,現在你被一個直接作用於窗口的應用程序A困住了,我建議你不要爲了讓你的應用程序正確使用UIViewController而做一堆工作,而只是讓應用程序B變成一個使用兩個應用程序的應用程序窗戶:

當App B想顯示應用程序A的含量,只是實例化一個新的UIWindow windowOfAppA,其RootViewController的設置爲應用程序A的RootViewController的,然後調用 '[windowOfAppA makeKeyAndVisible]'。一旦完成了應用程序A的工作,它可以通過調用'[windowOfAppB makeKeyAndVisible];'來取消關鍵窗口狀態。

我再次強調,我勉強描述的技術是可怕的風格,將來你的應用程序應該只使用一個窗口,它應該只在絕對必要時才採取行動。只要有可能,通過視圖控制器完成所有工作。

上這個答案的內容:

什麼是你的最終目標是什麼?您是否 試圖將App A變成 App B的一部分?如果是這樣,則不必對 層級或nib文件進行任何更改 。所有你必須 做的是從 應用程序副本的所有文件,以應用B和應用B (可能使用 presentModalViewController中實例化應用程序A的 根視圖控制器:動畫:) ,一切都應該工作的偉大。

+0

嗨 - 是的,這就是目標,但問題是應用程序A在主UIWindow上做了所有工作,這也反映在xibs中(這就是爲什麼我從不使用IB ....) – Egil 2010-09-16 20:38:52

+0

謝謝 - 使用多個窗口不幸是最好的和最簡單的解決方案。 – Egil 2010-09-16 22:08:32