2014-10-17 148 views
0

我在我的iOS應用程序中使用UIAlertController;然而,爲了保存自己的重複代碼行,我想在if/else分支之前初始化UIAlertController。即UIAlertController - 默認覆蓋ActionSheet?

var alertController = UIAlertController() 

if /* something */ { 
    alert.title = "Hello!" 
} else { 
    alert.title = "Goodbye!" 
} 

//yada yada actions yada yada 

self.presentViewController(alert) 

然而,當我發現我可以很容易地設置標題和消息的事實後,我似乎無法找到一個方法來設置樣式。默認情況下,它似乎使用一個ActionSheet,但我真的想要一個警報。我試過改變preferredStyle屬性,但它似乎是隻讀的。有什麼方法可以改變風格嗎?對於它的價值,我使用最新的iOS 8 SDK並使用Swift。

謝謝!

回答

2

是的,preferredStyle只能在初始化時設置。

你可以嘗試這樣的事情:

var alertController = UIAlertController(title: "", message: "", preferredStyle: .Alert) 

if /* something */ { 
    alert.title = "Hello!" 
} else { 
    alert.title = "Goodbye!" 
} 

//yada yada actions yada yada 

self.presentViewController(alert) 
+0

輝煌變通。謝謝! – 2014-10-18 18:47:07