我正在嘗試創建一個模擬UIAlertView
行爲的UIView
(和相關聯的UIViewController
)。根據我的要求,似乎更適合從頭開始創建我自己的實現,而不是嘗試子類化和修改UIAlertView
。爲了做到這一點,我得到了應用程序委託的引用,然後將UIViewController.view
(約爲0.6的alpha)添加爲主應用程序窗口的子視圖。這意味着它將出現在屏幕上所有其他視圖的頂部,並模擬UIAlertView
中找到的灰色背景。UIView覆蓋iPhone狀態/承載條
除UIView
(即UIViewController.view
)未覆蓋屏幕頂部的狀態/載體欄外,所有程序都運行良好。這意味着除了載體欄外,所有的屏幕都是灰色的,看起來有點奇怪!有沒有辦法讓UIView
出現在承載條的頂部?我聽到了有關在應用程序中添加第二個UIWindow
的意見,但這似乎不明智(因爲Apple文檔稱應該只在應用程序中有一個UIWindow
),即使這是最佳解決方案,我也不確定關於這種解決方案的技術實施。
請記住,這將是一個非常糟糕的主意,一旦iOS 5公開。顯示狀態欄的應用程序依靠它來顯示通知中心,如果您在其上放置某些內容,則可能會破壞此功能。 隱藏狀態欄將是一個更好的方法,因爲通知中心下拉行爲不同於此,並且您不會破壞它。 – 2011-08-06 09:48:00