2014-08-28 95 views
1

在我正在處理的應用程序中,我們有一些遺留代碼在應用程序中的多個點顯示定時UIAlertViews。這些警報視圖會在消失之前顯示一定的時間(比如說2秒)。如何在iOS 8上顯示沒有按鈕的UIAlertView?

這些警報視圖沒有按鈕,只有標題和消息。不知何故,這些警報視圖在iOS 5,6和7上工作得很好,但在iOS 8上,信息標籤不再顯示。

有沒有人有解決這個問題?我應該注意到我們對使用UIAlertController並不感興趣,因爲該類僅限於iOS 8,我們也需要支持舊版本。

所以我的問題如下:是否有可能在iOS 8上顯示一個只有標題和消息的UIAlertView和按鈕? (請注意:消息應正確顯示)。

+1

顯示用於顯示這些警報的代碼。它是用initWithTitle構造的嗎?什麼是論據? – 2014-08-28 12:42:05

+0

我可以使用Xcode 6b6重現它。這顯然是一個錯誤。 – 2014-08-28 13:38:25

+0

我有完全相同的問題。 – 2014-09-15 09:46:35

回答

0

對於任何與這個問題還在掙扎,我用下面的方法:

我創建了一個AlertController類,決定使用警報視圖的版本。對於iOS 7及更低版本,將默認爲「內置」UIAlertView。對於iOS 8,我使用了自定義警報視圖。

有幾個自定義警報視圖可用於創建顯示幾秒鐘的模式對話框。我在iOS Custom Alert View項目的代碼基礎上定製了自定義警報視圖。此外,我修復了外觀和感覺。可以這麼說,這個項目的默認外觀與iOS 7/8的外觀和感覺並不緊密相關,特別是在按鈕方面。彈出/隱藏動畫雖然做得很好。修復外觀和感覺涉及創建一個自定義對話框視圖類,它使用-drawRect:在按鈕周圍繪製線條。自定義子視圖也會添加自己的按鈕。

另一個可能有更好的外觀和感覺的替代項目是SDCAlertView。如果在開始修復iOS Custom AlertView之前我會找到SDCAlertView,那麼我可能會節省一些時間。

我應該注意我不能分享我的代碼/更改。我的僱主根本不喜歡這個。

-1

你可以試試這個代碼,您UIAlert:

 let alert = UIAlertView() 
     alert.title = "Title" 
     alert.message = "Message" 
     alert.show() 

應該沒有按鈕顯示UIAlert。

希望這可以幫助你。