0

我在我的 iOS 应用程序中使用 UIAlertController;但是,为了节省自己的重复代码行,我想在 if/else 分支之前初始化 UIAlertController。IE

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。

谢谢!

4

1 回答 1

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)
于 2014-10-17T06:29:27.000 回答