2016-08-07 98 views
0

無論何時用戶打開應用程序,我都想要顯示一個UIAlertController爲什麼我的UIAlertController不被解僱?

這是我如何創建並試圖證明它:

import UIKit 

class ViewController: UIViewController { 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     //simple alert dialog 
     let alert=UIAlertController(title: "Alert 1", message: "One is awesome", preferredStyle: UIAlertControllerStyle.Alert); 
     //show it 
     showViewController(alert, sender: self); 

    } 
} 

爲什麼不顯示?

+0

'showViewController'究竟是什麼? –

+1

這是顯示UIAlertController的默認方法 – Machado

回答

4

它會工作,如果你想使用方法:presentViewController(alert, animated: true, completion: nil)

正如@馬特說,這是更好地展示你的alertViewController在ViewDidAppear而不是viewDidLoad中,因爲比呈現的viewController是在接口。

+0

我換了,它沒有顯示任何東西。我認爲你的意思是viewDidAppear – Machado

+0

對不起,我用'presentViewController'而不是'showViewController'測試它,它在viewDidLoad中有效。我已更新我的答案 – Bacon

+0

謝謝!現在起作用了。 – Machado

2

太快了。在viewDidLoad中,您的視圖甚至不在界面中!沒有什麼來show從。

+0

我應該在哪裏放置它?如果我在那裏更改標籤文本,例如,它可以工作。 – Machado

+0

'viewDidAppear'是通常的地方,但是當你不想要的時候,注意不要在將來觸發警報。 – matt

相關問題