2015-05-28 128 views
1

我想在一個屏幕中設置自定義視圖,並將其在我的應用程序中的所有視圖控制器中。跨所有視圖控制器的iOS自定義視圖

我找到使用Container視圖的解決方案。所以我創建了RootViewController,我給它容器視圖並將其原始MainViewController設置爲嵌入到容器中。我將視圖添加到RootViewController和第一視圖控制器(MainViewController)看起來不錯。

問題是當我通過Push segue轉到另一個視圖控制器時。新的視圖控制器覆蓋整個屏幕(這是可以的),並涵蓋自定義視圖。我在想,如果我添加導航控制器的根目錄MainViewController,並且此導航控制器將嵌入RootViewController,但結果相同,這可能會有所幫助。我將導航欄設置爲隱藏(狀態欄相同),因爲我想隱藏。

那麼可能會出現問題?或者如何將自定義視圖添加到所有屏幕?這個自定義視圖應該像全局一樣工作(我正在使用NSTimer並計算時間),所以我繼承的解決方案不適合我。

+0

您可以爲您的計時器(和\或甚至您的視圖)創建一個單例,並使用一些基本視圖控制器,您可以在其中以編程方式添加此視圖。或者你可以在'appDelegate'中添加強大的屬性 –

回答

1

您可以使用應用程序窗口並在需要時將此自定義視圖添加爲子視圖。我在我的一個應用程序中使用它來顯示通知(如果有的話),它的效果很好。

獲取應用程序窗口的句柄並添加子視圖到它。自定義視圖可以從單例類或應用程序委託創建。

0

你可以試試它。在你的根視圖控制器和容器視圖內創建一個永遠不會改變的視圖,並根據你想要在不變視圖旁邊顯示的內容來更改容器視圖的內容。

相關問題