2011-09-28 32 views
0

該問題涉及在UINavigation控制器樣式中使用許多視圖的應用程序。 在後臺有一個過程加載和緩存數據,過程是相當廣泛的,這可能需要相當長的一段時間,它表示它被設計爲運行在單獨的線程(S)做它的背景加載任務 - 而其他視圖呈現並且對用戶有效。與iOS上的模型 - 視圖 - 控制器相關的概念性問題

問題:假設我想向用戶顯示在後臺運行的進度,例如進度視圖或類似內容。我不應該認爲每個視圖都應該有一個由一些Notification/Listener機制填充和控制的progressView。

邏輯告訴我應該有一種方法,只有一個進度視圖存在於所有視圖中,並且不知何故只被調用一次,只分配一次等等。

如果我的邏輯是正確的,應該如何處理這個問題,這個元素應該放在哪裏?

任何想法,哲學或線索將被高度appricated。

回答

0

將它作爲子視圖添加到UIWindow中,位於UINavigationController視圖的上方。這是我如何覆蓋成就等,這可能隨時發生。

+0

所以在委託文件? 你可以提供一個例子,或者它只是 MyView * viewController = [MyView alloc]; [window addSubview:viewController.view]; – chewy

+0

我就是這麼做的。我有一個管理覆蓋表現的singleton類(每次只有一個,隊列等有一個rootView屬性,我首先在App委託中運行)。或者@vikingsegundo提到你可以使用屏幕上的UIView的窗口屬性。 –

+0

謝謝,好簡單的回答。 – chewy